版权声明:本文为Zhang Phil原创文章,请不要转载! https://blog.csdn.net/zhangphil/article/details/88399547
Python多线程Thread
import threading
import time
import random
def worker(name):
#print(name+"开始运行...")
n = 0
while True:
print(name+":输出"+str(n))
n = n+1
t = random.randint(0, 5)
print(name+"休眠"+str(t)+"秒\n")
time.sleep(t)
class MyThread(threading.Thread):
def __init__(self, name):
threading.Thread.__init__(self)
self.name = name
def run(self):
worker(self.name)
for name in range(5):
t = MyThread("线程"+str(name))
t.start()
运行输出:
线程0:输出0
线程1:输出0线程0休眠1秒
线程1休眠0秒
线程2:输出0线程1:输出1线程3:输出0
线程3休眠2秒
线程1休眠3秒
线程4:输出0
线程2休眠1秒
线程4休眠2秒
线程0:输出1
线程0休眠5秒
线程2:输出1
线程2休眠0秒
线程2:输出2
线程2休眠3秒
线程4:输出1线程3:输出1
线程4休眠5秒
线程3休眠3秒
线程1:输出2
线程1休眠5秒
线程2:输出3
线程2休眠1秒
线程3:输出2
线程3休眠5秒
线程2:输出4
线程2休眠5秒
线程0:输出2
线程0休眠4秒
线程4:输出2
线程4休眠4秒
线程1:输出3
线程1休眠5秒
线程0:输出3
线程0休眠1秒
线程3:输出3
线程3休眠5秒
线程2:输出5
线程2休眠5秒
线程4:输出3
线程4休眠5秒
线程0:输出4
线程0休眠5秒
线程1:输出4
线程1休眠5秒
线程3:输出4
线程3休眠1秒
线程2:输出6
线程2休眠5秒
线程4:输出4
线程4休眠4秒
线程0:输出5
线程0休眠3秒
线程3:输出5
线程3休眠2秒
线程1:输出5线程3:输出6
线程1休眠2秒
线程3休眠0秒
......