import threading
import time
import randomdef takeSleep(id, name):print(name+'-'+id+':线程开始运行...')time.sleep(random.randint(0, 3))print(name+'-'+id+':线程任务结束')print('主程序开始运行...')
threads = []
for i in range(0, 5):t = threading.Thread(target=takeSleep, args=(str(i), 'zhangphil'))threads.append(t)t.start()print('主程序运行中...')#等待所有线程任务结束。
for t in threads:t.join()print("所有线程任务完成")

运行输出:

主程序开始运行...
zhangphil-0:线程开始运行...
zhangphil-1:线程开始运行...
zhangphil-0:线程任务结束zhangphil-2:线程开始运行...
zhangphil-3:线程开始运行...zhangphil-1:线程任务结束
zhangphil-4:线程开始运行...主程序运行中...zhangphil-4:线程任务结束
zhangphil-2:线程任务结束
zhangphil-3:线程任务结束
所有线程任务完成

Python等待所有线程任务完成相关推荐

  1. python 等待其他线程执行完_面试官:如何让线程顺序执行,join,还有其他办法吗?...

    面试官:如让线程顺序执行? 我:使用Thread的join方法. 面试官:除了join还有别的办法吗? 我:目前只用过join. 面试官:哦,那你了解CountDownLatch吗? 我:不了解,没使 ...

  2. c++主线程等待子线程结束_简单明了的 Python 多线程来了 | 原力计划

    作者 | 万里羊责编 | 王晓曼出品 | CSDN博客线程和进程计算机的核心是CPU,它承担了所有的计算任务,就像是一座工厂在时刻运行.如果工厂的资源有限,一次只能供一个车间来使用,也就是说当一个车间 ...

  3. python等待线程结束_python线程join

    几个事实 1 python 默认参数创建线程后,不管主线程是否执行完毕,都会等待子线程执行完毕才一起退出,有无join结果一样 2 如果创建线程,并且设置了daemon为true,即thread.se ...

  4. Python进程、线程、协程详解

    进程与线程的历史 我们都知道计算机是由硬件和软件组成的.硬件中的CPU是计算机的核心,它承担计算机的所有任务. 操作系统是运行在硬件之上的软件,是计算机的管理者,它负责资源的管理和分配.任务的调度. ...

  5. python停止线程池_详解python中Threadpool线程池任务终止示例代码

    需求 加入我们需要处理一串个位数(0~9),奇数时需要循环打印它:偶数则等待对应时长并完成所有任务:0则是错误,但不需要终止任务,可以自定义一些处理. 关键点 定义func函数处理需求 callbac ...

  6. 教你控制Python多线程中线程数量

    前言 前段时间学习了python的多线程爬虫,当时爬取一个图片网站,开启多线程后,并没有限制线程的数量,也就是说,如果下载1000张图片,会一次性开启1000个子线程同时进行下载 现在希望控制线程数量 ...

  7. python中的线程

    阅读目录 线程的理解应该结合进程来对比理解更直接 如果我们操作系统当做一个工厂的话,那么创建一个进程就相当于在这个工厂里面新增了一个车间,车间里面存放了很多资源,而车间要运行起来很显然的标志就是流水线 ...

  8. Python中的线程间通信

    Python中的线程间通信 文章目录 Python中的线程间通信 1.Queue 2.同步机制 1.Event 2.Semaphore(信号量) 3.Lock(锁) 4.RLock(可重入锁) 5.C ...

  9. python 批量创建线程_【Python】批量创建线程

    在<[Python]线程的创建.执行.互斥.同步.销毁>(点击打开链接)中介绍了Python中线程的使用,但是里面线程的创建,使用了很原始的方式,一行代码创建一条.其实,Python里是可 ...

  10. python 进程和线程

    python中的进程.线程(threading.multiprocessing.Queue.subprocess) Python中的进程与线程 学习知识,我们不但要知其然,还是知其所以然.你做到了你就 ...

最新文章

  1. 《Visual C++ 开发从入门到精通》——1.4 技术解惑
  2. java字符生成器_Java实现简单字符生成器代码例子
  3. COM笔记-CoCreateInstance
  4. HNCU 1741: 算法3-2:行编辑程序
  5. Delphi 2010 新增功能之: TWICImage 类[4] - 图像的修剪
  6. Ubuntu无法正常输入英文单引号符号 + 误删除package导致系统设置异常(解决方案)...
  7. 什么是常驻内存式的开发模式?_“直播+”模式下的直播系统开发需要注意什么问题?...
  8. url、href、src
  9. LR mobile HTTP/HTML协议实战
  10. Android:是时候掌握WebView与Js的交互技术了
  11. 用perl发送数据到钓鱼站
  12. zencart 批量修改价格
  13. 容器技术Docker K8s 14 容器服务ACK基础与进阶-容器网络管理
  14. 微信资源混淆AndResGuard原理
  15. vb mysql 实例_vb数据库编程实例-求VB连接数据库实例我想做一个VB连接数据库的简单实例,可以实现 爱问知识人...
  16. T1-商贸宝,提取暂存单据提示没有权限
  17. 康诺特酒吧摘得2021全球50家最佳酒吧桂冠;华住与京能集团达成战略合作 | 全球旅报...
  18. latex中极限号下边怎么打_latex 极限下标
  19. dataworks 生成表血缘依赖
  20. 数据库原理及应用-李唯唯主编-实验3-4

热门文章

  1. [网络性能测试学习笔记] 测试AX3 Pro WiFi6无线路由器的系统转发能力(硬件转发交换能力L23吞吐量,L47应用层能力-最大可支持设备用户数,并发连接数等)
  2. android studio 模拟器文件管理器
  3. 原来,嵌入式BI方案的核心差异在这,教你如何评估
  4. 曲终人散,我亦是行人。
  5. python绘画海贼王_Python爬虫之爬取海贼王全彩漫画图片
  6. php条件 效率高,PHP高效率写法
  7. 巨杉数据库SCDP认证考试答案
  8. 计算机视频追踪方向,基于深度学习的目标视频跟踪算法综述
  9. 在使用百度地图API时,浏览器报错
  10. 吃货必须知道的经验,收藏备用了!太全面了!