【发布时间】:2014-06-10 17:34:57
【问题描述】:
我正在阅读The Python Standard Library by Example,当我到达第 509 页时感到困惑。
到目前为止,示例程序已隐式等待退出,直到所有线程完成其工作。程序有时会生成一个线程作为守护进程,该线程在不阻止主程序退出的情况下运行。
但是在我运行一些代码之后,我得到了相反的结果。代码是这样的:
#!/usr/bin/env python
# encoding: utf-8
#
# Copyright (c) 2008 Doug Hellmann All rights reserved.
#
"""Creating and waiting for a thread.
"""
#end_pymotw_header
import threading
import time
def worker():
"""thread worker function"""
print 'Worker'
# time.sleep(10000)
return
threads = []
for i in range(5):
t = threading.Thread(target=worker)
threads.append(t)
t.start()
print "main Exit"
有时结果是这样的:
Worker
Worker
WorkerWorker
main Exit
Worker
所以我想问一下python中的主线程启动几个线程后什么时候退出?
【问题讨论】:
标签: python multithreading