线程的join方法

2020-12-13 13:44

阅读:562

标签:RoCE   线程   multi   get   art   tip   proc   sleep   python   

线程的join方法

from threading import Thread
import time
def task():
    print('子线程 start')
    time.sleep(2)
    print('子进程 end')

t=Thread(target=task)
t.start()
t.join()
print('主进程')
from threading import Thread
import time
def task(name,n):
    print(f'{name} start')
    time.sleep(n)
    print(f'{name} end')

t1 = Thread(target=task,args=('线程1',1))
t2 = Thread(target=task,args=('线程2',2))
t3 = Thread(target=task,args=('线程3',3))
start = time.time()
t1.start()
t2.start()
t3.start()
t1.join() # 111s
t2.join() #
t3.join()
end = time.time() # 3.0039877891540527
# 思考一下 在单核的情况下 多个线程是如何利用cpu的
print(end-start)


# print('主线程')
from multiprocessing import Process
from threading import Thread
import time
def task():
    print('进程 开启')
    time.sleep(10)
    print('进程 结束')
def task2():
    print('子线程 开启')
    time.sleep(2)
    print('子线程 结束')

if __name__ == '__main__':
    p = Process(target=task)
    t = Thread(target=task2)
    t.start() # 开线程
    p.start() # 开进程
    print('子进程join开始')
    p.join() # 主进程的主线程等待子进程运行结束
    print('主')

线程的join方法

标签:RoCE   线程   multi   get   art   tip   proc   sleep   python   

原文地址:https://www.cnblogs.com/aden668/p/11534360.html


评论


亲,登录后才可以留言!