Python 多处理队列中的get方法是否从队列中删除该值
在python多处理中,当使用队列在进程之间共享数据时,一旦将数据放入队列()中,并且在另一个进程中使用get()检索数据时,此方法是从队列中删除值,还是只在队列中深度复制值?e、 gPython 多处理队列中的get方法是否从队列中删除该值,python,multiprocessing,Python,Multiprocessing,在python多处理中,当使用队列在进程之间共享数据时,一旦将数据放入队列()中,并且在另一个进程中使用get()检索数据时,此方法是从队列中删除值,还是只在队列中深度复制值?e、 g from multiprocessing import Process, Queue def f(q): q.put([42, None, 'hello']) if __name__ == '__main__': q = Queue() p = Process(target=f, ar
from multiprocessing import Process, Queue
def f(q):
q.put([42, None, 'hello'])
if __name__ == '__main__':
q = Queue()
p = Process(target=f, args=(q,))
p.start()
print q.get() # prints "[42, None, 'hello']"
p.join()
在上面的代码中,q.get()是否从队列中删除[42,None,‘hello’ 是的,queue.get()删除队列中的第一项。
多处理.queue
复制文档中所述的queue.queue
的API,因此您可以只阅读queue.queue.get
的文档。