我遇到使用线程的python脚本问题。我可以用以下代码模仿这个问题:
from threading import Thread
def func1():
while True:
print 'Function 1'
def main():
t = Thread(target = func1)
t.start()
for i in xrange(100000):
print 'Main'
t.stop()
print 'End'
if __name__ == '__main__':
main()
问题是当我用 Ctrl + C 中断脚本时或者当它到达终点时,运行func1()
的线程不会停止
如果打开终端并killall python
,我只能中断执行。
这是我第一次使用Python中的线程。我究竟做错了什么?
答案 0 :(得分:1)
我的方法(也许不是最好的,但它有效)是:
join()
以等待它完成。join()
返回并允许您的主要功能退出。