您可以
iter与callable一起使用。(您应该传递两个参数,一个用于可调用对象,另一个用于前哨值)
for job in iter(queue.get, None): # Replace `None` as you need. # do stuff with job
注意
当没有剩余元素并且没有放置哨兵值时,它将阻塞。另外,就像
while-
get循环,并且与普通的
for容器循环不同,它将从队列中删除项目。
UPDATE :
None是通用值,因此这是一个具有更具体的哨兵值的示例:
sentinel = object()for job in iter(queue.get, sentinel): # do stuff with job
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)