假设我有一个包含两个元素的队列。
我循环遍历队列,使用get弹出项目。我担心一旦弹出第二个元素,循环就会停止,而我需要重新处理它,因为出现了一些错误。所以我把它放回队列,但是由于此时队列已经为空,所以它不会被放回去。
我的循环:
我的循环:
while not queue.empty():
try:
item = queue.get()
do stuff(item):
except Exception as e:
queue.put(item)
queue.task_done()
我阅读了关于 Queue.empty()
的文档,但对于阻塞和它的含义感到困惑。