Teilen Sie ein komplexes Objekt zwischen Python-Prozessen?
Ich habe ein ziemlich komplexes Python-Objekt, das ich für mehrere Prozesse freigeben muss. Ich starte diese Prozesse mitmultiprocessing.Process
. Wenn ich ein Objekt mit @ teimultiprocessing.Queue
undmultiprocessing.Pipe
drin werden sie ganz gut geteilt. Aber wenn ich versuche, ein Objekt mit anderen Nicht-Multi-Prozessor-Modul-Objekten zu teilen, scheint es, als ob Python diese Objekte teilt. Ist das wahr
Ich habe versucht, Multiprocessing.Value zu verwenden. Aber ich bin mir nicht sicher, welcher Typ sein soll? Meine Objektklasse heißt MyClass. Aber wenn ich es versuchemultiprocess.Value(MyClass, instance)
, es schlägt fehl mit:
TypeError: this type has no size
Keine Ahnung, was los ist?