线程装饰器 发现挺好用的
from threading import Threadimporttime
def cal_back(func):
def marge(*args):
t = Thread(target=func,args=(*args,))#第一个参数是线程函数变量,第二个参数args是一个数组变量参数,如果只传递一个值,就只需要i, 如果需要传递多个参数,那么还可以继续传递下去其他的参数,其中的逗号不能少,少了就不是数组了,就会出错。
print(func.__name__,"正在开启线程") #func.__name__获取 函数名字
t.start()
return marge
@cal_back
defpig(a,b,c):
sum = a + b+ c
time.sleep(2)
print(sum)
@cal_back
defnumbe():
time.sleep(3)
fory in range(100):
print(y)
if __name__ == '__main__':
start = time.time()
pig(5,6,9)
numbe()
foriin range(100):
print(i)
print(time.time()-start) 细水流长 发表于 2021-6-24 11:23
如何判断所有线程都执行完了?
直接把主线程阻塞 楼主你说的是阻塞单线程(join)还是?? playjobs 发表于 2021-6-24 15:41
楼主你说的是阻塞单线程(join)还是??
join 应该不能用直接time.sleep
页:
[1]