在Python中,使用thread.join
与使用queue.join
有什么区别?我觉得在某些情况下,两者都能起到同样的作用。尤其是当派生的线程和从队列中为作业选择的项之间存在一个一个对应关系时。如果你要在一个queue
上使用Threading
,那么最好依赖queue.join
,如果你只是在并行地做一些没有使用queue
数据结构的事情,但它类似于list
,你可以使用thread.join
?当然,在thread.join
的场景中,您需要提到生成的所有线程。在
另外,就像旁白是queue
你通常用来消费输入的东西?我认为在为另一个作业链接输入的场景中,也可以将其用作输出,但一般情况下,queue是用来处理输入的?有人能澄清吗?在
Queue.join
将等待队列为空(实际上,在处理后为每个项目调用Queue.task_done
)。Thread.join
将阻塞,直到所有线程终止。如果所有线程都从队列中获取项目,生成一个任务并在没有任何剩余的情况下返回,那么使用一个或另一个的行为可能类似。但是,您仍然可以有根本不使用队列的线程,因此Queue.join
将是无用的。在相关问题 更多 >
编程相关推荐