queue.Queue.get
方法具有一个timeout
参数,以等待要检索的一个元素的存在。
我想“一次”“最多”检索25个元素,“最多”等待5秒钟。我该如何实现?
答案 0 :(得分:1)
只需计算剩余时间(超时)。
TIMEOUT=5
t = time.monotonic()+TIMEOUT
items = []
for n in range(25):
try:
items.append(q.get(timeout=t-time.monotonic()))
except queue.Empty:
break