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

Sebastian Moors mauser at s13s.de
Don Jul 1 18:17:31 CEST 2004


hi! 

ich habe ein problem mit fork().
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)
mfg
Sebastian

player1=player.mplayer('/usr/bin/mpg123')
		while stop==0:
			conn, addr = s.accept()
			pid2=os.fork()  
			temp=weakref.ref(player1)
			media_play=temp()
			if pid2==0:
				while stop==0:
					data = conn.recv(1024)
					if data != "":
						print 'Server:Connected by', addr, " Recv: ",data
						answer=data_handler(data,media_play)
						if answer=="quit ok": stop=1
						conn.send(answer)
				conn.close()
			else:
				os.wait()
		print "Child exited "


-- 

"It's God.  No, not Richard Stallman, or Linus Torvalds, but God."
(By Matt Welsh)