[Python-de] fork und objekt-gültigkeit

Diez B. Roggisch deets at web.de
Fre Jul 2 17:38:26 CEST 2004


> der code soll einen server aufbauen, der einen mp3player steuert.
> das problem ist, dass bei jdem fork dass objekt mplayer kopiert wird und
> nicht immer ein und dasselbe objekt angesprochen wird.
> das heisst, das änderungen die ein fork()-prozess am objekt mplayer macht,
> vom nächsten fork-prozess nicht mehr gelesen werden können, da der erste
> prozess ja ein "privates" abbild von mplayer macht und dort die änderungen
> ausführt. ist es auch irgendwie möglich, immer auf dasselbe objekt
> zuzugreifen ? also eine art globales,festes objekt zu deklarieren ?
> (ohne shared memory zu benutzen)

Warum benutzt du fork - mit threads verschwindet zumindest dieses problem.

Darueberhinaus ist mir kein Weg bekannt, wie man ein python-objekt in einen 
shared mem bereich bekommen koennte - denn ein Objekt existiert ja nicht im 
luftleeren Raum - jeder der interpreter hat ja zB referenzen zu verwalten 
usw.

Normaleweise kommunizieren prozesse ueber IPC wie zB pipes oder sockets. Wenn 
das zu primitiv ist und es Objekte sein sollen, schau mal in Richtung pyro 
oder corba.

MfG Diez