2016-09-06 31 views
0

手动退出线程是否是一种好的做法?下面的代码注释了#sys.exit(),因为我假设线程在那里结束。但无论如何,结束它是好的做法吗?如果没有,是否有任何开销创建,如果该线程被称为hundres次没有手动退出与sys.exit()?在python中手动退出线程是否是一种好的做法?

import time 
import threading 
import sys 

def non_daemon(): 
    print('Test non-daemon') 
    time.sleep(5) 
    #sys.exit() # is this necessary/encouraged? 

t = threading.Thread(name='non-daemon', target=non_daemon) 
t.start() 

print("done") 

回答

4

sys.exit()与线程无关。正如the docs所解释的那样,它只在主线程中调用时才有效果。在所有其他情况下,它所做的只是引发一个例外。绝对没有理由在线程中调用它。

相关问题