Ich bin neu in Python Multiprozess API. Ich habe eine benutzerdefinierte Unterklasse von , lassen Sie uns MyProcess
nennen. Viele Beispiele, die ich sehe, definieren Queues
in __main__
und gehen dann zum Process
Konstruktor über.Queue und Process Unterklasse Instanziierungsverhalten
In meinem Fall spawnen ich N Process
Unterklassen und 2 Queue
für jeden (vor und nach Prozess). Ich würde es vorziehen, die Queue
Initialisierung in jedem Teilprozess zu setzen:
import multiprocessing as mp
class MyProcess(mp.Process) :
def __init__(self,ID) :
mp.Process.__init__(self)
self.name = ID
self.queues = {'pre':mp.Queue(),'post':mp.Queue()}
if __name__ == "__main__" :
my_proc = MyProcess(ID)
Statt:
import multiprocessing as mp
class MyProcess(mp.Process) :
def __init__(self,ID,queues) :
mp.Process.__init__(self)
self.name = ID
self.queues = queues
if __name__ == "__main__" :
my_proc = MyProcess(ID,{'pre':mp.Queue(),'post':mp.Queue()})
Ist das möglich oder gibt es eine Gurke/sync/scope Problem hier?