当创建threading.Thread()的子类时,我已经覆盖了.join()方法。当我用一个测试脚本测试我的类时,它工作正常,但是在我的程序中使用它时,thread.join)方法一遍又一遍地被调用,但它并不是我所做的。什么叫这个方法?据我所知,没有任何例外。使用检查调用函数似乎是_exitfunc,但我无法找到任何信息。thread.join()被调用,它不是我
我的代码是长职位,但可以发现here
当创建threading.Thread()的子类时,我已经覆盖了.join()方法。当我用一个测试脚本测试我的类时,它工作正常,但是在我的程序中使用它时,thread.join)方法一遍又一遍地被调用,但它并不是我所做的。什么叫这个方法?据我所知,没有任何例外。使用检查调用函数似乎是_exitfunc,但我无法找到任何信息。thread.join()被调用,它不是我
我的代码是长职位,但可以发现here
如果调用函数是_exitfunc
这意味着,join
方法被调用的程序终止。这是可以预料的,因为Python线程框架在所有运行的非后台线程上调用join
作为程序终止的一部分。
的_exitfunc
最好的解释是另外一个堆栈溢出问题:What is a python thread
如果你不想join()
被称为当程序退出,使线程守护进程:
t.daemon = True
非守护线程将继续运行,直到它们全部死亡。