gpt4 book ai didi

python - 加入守护线程

转载 作者:行者123 更新时间:2023-11-28 21:39:02 25 4
gpt4 key购买 nike

我在阅读有关守护线程的内容时,发现了这个 SO页面,答案下的评论说:

But joining a demonized thread opens most likely a whole can of trouble! I'm now considering to remove the join() call in my little diagram for the daemon-thread

我明白守护线程的用途和原因,但是,假设您必须等待守护线程完成它正在做的事情,如果调用 join() 被认为是一个很麻烦?

最佳答案

如果你想能够.join一个线程,最好不要让它成为守护进程。守护进程线程适用于您希望线程执行其任务并且您不太关心它何时或是否完成的情况。

创建守护线程的要点是,当没有非守护线程处于事件状态时,程序将退出。

来自 the threading docs :

A thread can be flagged as a “daemon thread”. The significance of this flag is that the entire Python program exits when only daemon threads are left. The initial value is inherited from the creating thread. The flag can be set through the daemon property or the daemon constructor argument.

您实际上可以在守护线程上调用 .join,但通常认为这不是好的做法。

您可以让一个守护线程在它完成之前设置一个事件,一个或多个其他线程检查,但使用非守护线程并.join它更简单。

此答案的早期版本声称您不能.join 守护线程。那是不正确的。我被虚拟线程搞混了。对于那个很抱歉。 :oops:

关于python - 加入守护线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47380442/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com