.Python multiprocessing.Queue() Kuyruk() Böyle basit bir görev var
def worker(queue):
while True:
try:
_ = queue.get_nowait()
except Queue.Empty:
break
if __name__ == '__main__':
manager = multiprocessing.Manager()
# queue = multiprocessing.Queue()
queue = manager.Queue()
for i in range(5):
queue.put(i)
processes = []
for i in range(2):
proc = multiprocessing.Process(target=worker, args=(queue,))
processes.append(proc)
proc.start()
for proc in processes:
proc.join()
O multiprocessing.Queue i gerekli tüm çalışmaları yapmak, diğer yandan gibi görünüyor el yönetici(). Queue() 'nın birçok örneğini görüyorum ve gerçekten neye ihtiyacım olduğunu anlayamıyorum. Görünüşe göre Manager(). Queue() bir çeşit proxy nesnesi kullanır, ancak bu amacı anlamıyorum, çünkü çoklu işlem.Queue() herhangi bir proxy nesnesi olmadan aynı işi yapar.
Yani, sorularım geçerli:
() Kuyruk multiprocessing.manager tarafından döndürülen1) Gerçekten fark multiprocessing.Queue ve nesne arasındaki().?
2) Neye ihtiyacım var? Benim anlayış Ben multiprocessing.Queue() ve multiprocessing.Manager() arasındaki bir ana fark vardır söyleyebilirim yaptıklarından, bu konuda sınırlı olmasına rağmen
Bu yardımcı olabilir. https://code.activestate.com/lists/python-tutor/99586/ –