import threading
import time
class Test(threading.Thread):
# 继承threading.Thread
def __init___(self):
super(Test, self).__init__()
def run(self):
# 设置线程方法
threadname = threading.currentThread().getName()
for x in xrange(10):
print threadname, x,
print
time.sleep(1)
threads = []
for i in xrange(1, 5):
threads.append(Test())
for t in threads:
#启动线程
t.start()
# 主线程中等待所有子线程退出
for i in threads:
t.join() # 线程完成
# 如果不加上面t.join,将会一直等待下去,无法打印出end
print 'end'
如果你的主线程中有别的事情要做,就无需加join,加join只是告诉主线程,所有子线程已经完成