zoukankan      html  css  js  c++  java
  • 线程的join方法

    线程的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('主')
    
  • 相关阅读:
    UIScrollView设置滑动的距离
    iOS动画效果和实现
    cmd 编码 utf8
    详细的ifcfg-eth0配置详解
    Centos下 Nginx安装与配置
    linux安装目录
    utf8 和 UTF-8 的区别
    后台添加搜索功能讲解
    移动端 禁横向滚动
    PC端 $_SERVER 说明
  • 原文地址:https://www.cnblogs.com/aden668/p/11534360.html
Copyright © 2011-2022 走看看