# -*- coding: utf-8 -*- import threading from time import ctime,sleep import time def h(): sum=0 for j in range(200): print('hello') print('end') def b(arg): for j in range(40): print('byebye') if __name__=='__main__': thread_list=[] A=time.clock() print('单线程start%s'%ctime()) h() B=time.clock() print('over,%s'%ctime()) print(B-A) C=time.clock() print('5线程start%s'%ctime()) for i in range(5): t = threading.Thread(target=b,args=(i,)) t.setDaemon(True) thread_list.append(t) for t in thread_list: t.start() for t in thread_list: t.join() print('end of 5') D=time.clock() print('over,%s'%ctime()) print(D-C)
同一个函数拆分为5个县城来进行,反而比单线程慢了0.002792028726282秒=0.003619162331-0.000827133604718
网上解答是的Global Interpreter Lock原因,特别是PYTHON2.+,PYTHON3.+好像已经改进了全局锁
threading多线程试用
最新推荐文章于 2022-08-03 17:17:14 发布