this thread详细讨论了为什么终止线程不是一个好主意。我同意当我们谈论一个实际的计划时。
我正在为几个组件编写单元测试,以及它们之间的一些集成测试。有些需要穿线。当测试失败时,一些线程保持打开状态,锁定在队列的.get()
调用中。这会导致整个测试套件陷入困境而无法完成。我正在运行ptw
(pytest watch)或使用inotifywait
自定义pytest循环,以监视文件中的更改以重新运行该套件。在
当所有的测试都完成后,我希望套件终止所有剩余的线程来完成循环,而不是因为测试失败而被困在某个刚刚打开的线程上。这可能吗?在
Tags:
没有一种优雅的方法来停止线程,但是可以将它们的
daemon
设置为True
。在代码段:
然后它们将在主线程终止时终止。在
相关问题 更多 >
编程相关推荐