【发布时间】:2020-08-14 21:45:58
【问题描述】:
如何检查队列是否为空?运行以下代码:
from multiprocessing import Queue
q = Queue()
print(q.empty())
q.put("a")
print(q.empty())
渲染:
True
True
在添加元素后,q.empty() 是否应该返回 False?
【问题讨论】:
-
我猜
put是异步的,所以你不能保证它会在下一行执行时完成。 -
它是异步的,让它休眠2秒然后再次检查
q.empty() -
@MZ 是的,在添加元素后使用 time.sleep(1) 在空检查时返回 False。我会发布一个简短的答案还是你会?
标签: python python-multiprocessing