Python多线程:主线程等待所有子线程结束代码


Posted in Python onApril 25, 2020

我就废话不多说了,还是直接看代码吧!

from time import ctime
import threading
import time

def a():
    #for i in range(5):
        print('Program a is running... at ', ctime(),u'.线程名为:',threading.current_thread().name )
        time.sleep(0.2)
        
def b(x):
    #for i in range(5):
        print('Program b('+x+') is running... at ', ctime(),u'.线程名为:',threading.current_thread().name )
        time.sleep(0.1)
        

if __name__ == '__main__':
    print('Mainthread %s is running...' % threading.current_thread().name)
    thread_list = []
    for i in range(400):#同时运行多个
       t1= threading.Thread(target=a)
       thread_list.append(t1)
       
    t2 = threading.Thread(target=b, args=('Python',))
    thread_list.append(t2)
    t3 = threading.Thread(target=b, args=('Java',))
    thread_list.append(t3)
    

    for t in thread_list:
        t.setDaemon(True)  # 设置为守护线程,不会因主线程结束而中断
        t.start()
    for t in thread_list:
        t.join()  # 子线程全部加入,主线程等所有子线程运行完毕

    print('Mainthread %s ended.' % threading.current_thread().name)

补充知识:Python主线程结束为什么守护线程还在运行?

在实际的交互模式中,主线程只有在Python退出时才终止,所以action函数输出结果还是被打印出来了。”

按照我的理解应该是说,在shell里主线程在输出结果之后并没有真的结束,所以action还会打印结果。

建议把程序编译出来,放到另外的环境中测试,估计就会是你要的结果了。

以上这篇Python多线程:主线程等待所有子线程结束代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python多进程操作实例
Nov 21 Python
在Python3中使用asyncio库进行快速数据抓取的教程
Apr 02 Python
Python使用matplotlib实现在坐标系中画一个矩形的方法
May 20 Python
Python操作SQLite数据库的方法详解
Jun 16 Python
Python闭包之返回函数的函数用法示例
Jan 27 Python
python中正则表达式的使用方法
Feb 25 Python
Python常见的pandas用法demo示例
Mar 16 Python
python获取磁盘号下盘符步骤详解
Jun 19 Python
Python求解正态分布置信区间教程
Nov 20 Python
Python调用scp向服务器上传文件示例
Dec 22 Python
Python3实现个位数字和十位数字对调, 其乘积不变
May 03 Python
python给list排序的简单方法
Dec 10 Python
解决python父线程关闭后子线程不关闭问题
Apr 25 #Python
Python标准库:内置函数max(iterable, *[, key, default])说明
Apr 25 #Python
python except异常处理之后不退出,解决异常继续执行的实现
Apr 25 #Python
python 追踪except信息方式
Apr 25 #Python
Python实现捕获异常发生的文件和具体行数
Apr 25 #Python
python IDLE添加行号显示教程
Apr 25 #Python
IDLE下Python文件编辑和运行操作
Apr 25 #Python
You might like
PHP中static关键字原理的学习研究分析
2011/07/18 PHP
深入理解用mysql_fetch_row()以数组的形式返回查询结果
2013/06/05 PHP
深入解析php中的foreach函数
2013/08/31 PHP
php数组去除空值函数分享
2015/02/02 PHP
php微信开发之自定义菜单实现
2016/11/18 PHP
laravel学习笔记之模型事件的几种用法示例
2017/08/15 PHP
PHP连接MySQL数据库并以json格式输出
2018/05/21 PHP
JavaScript中this关键字使用方法详解
2007/03/08 Javascript
用于节点操作的API,颠覆原生操作HTML DOM节点的API
2010/12/11 Javascript
如何学习Javascript入门指导
2013/11/01 Javascript
JavaScript保留两位小数的2个自定义函数
2014/05/05 Javascript
html的DOM中document对象anchors集合用法实例
2015/01/21 Javascript
javascript作用域、作用域链(菜鸟必看)
2016/06/16 Javascript
手机Web APP如何实现分享多平台功能
2016/08/19 Javascript
AngularJS extend用法详解及实例代码
2016/11/15 Javascript
easyUI下拉列表点击事件使用方法
2017/05/18 Javascript
angular4模块中给标签添加背景图的实现方法
2017/09/15 Javascript
javascript 开发之网页兼容各种浏览器
2017/09/28 Javascript
微信小程序引入模块中wxml、wxss、js的方法示例
2019/08/09 Javascript
vue实现导航菜单和编辑文本的示例代码
2020/07/04 Javascript
用Python实现一个简单的能够上传下载的HTTP服务器
2015/05/05 Python
横向对比分析Python解析XML的四种方式
2016/03/30 Python
Python操作mongodb数据库的方法详解
2018/12/08 Python
使用python对多个txt文件中的数据进行筛选的方法
2019/07/10 Python
python笔记_将循环内容在一行输出的方法
2019/08/08 Python
在Keras中实现保存和加载权重及模型结构
2020/06/15 Python
对python中list的五种查找方法说明
2020/07/13 Python
django创建css文件夹的具体方法
2020/07/31 Python
简单介绍HTML5中audio标签的使用
2015/09/24 HTML / CSS
Skyscanner香港:机票比价, 平机票和廉价航空机票预订
2020/02/07 全球购物
美国领先的机场停车聚合商:Airport Parking Reservations
2020/02/28 全球购物
感恩小明星事迹材料
2014/05/23 职场文书
放射科岗位职责
2015/02/14 职场文书
质量保证书格式
2015/02/27 职场文书
大学生十八大感想
2015/08/11 职场文书
2016年教师党员创先争优承诺书
2016/03/24 职场文书