Python多线程:主线程等待所有子线程结束代码
作者:woho778899 发布时间:2021-03-18 05:31:53
标签:Python,多线程,主线程,子线程
我就废话不多说了,还是直接看代码吧!
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还会打印结果。
建议把程序编译出来,放到另外的环境中测试,估计就会是你要的结果了。
来源:https://blog.csdn.net/woho778899/article/details/90691585


猜你喜欢
- 片头Python看了差不多三四天吧,基本上给基础看差不多了。写个管理系统吧,后续不出意外SQL、文件存储版本都会更。学习Python感想:
- 本文实例讲述了python通过加号运算符操作列表的方法。分享给大家供大家参考。具体如下:li = ['a', 'b&
- 数据库中有user表如下:新建一个Django项目:django-admin.py startproject myDjango<pro
- 描述random() 方法返回随机生成的一个实数,它在[0,1)范围内。import randomhelp(random)FUNCTIONS
- asp.net和php哪个更好?在.net之前,微软的是ASP。在微软的大力推广下,其看起来还是很有前途的。但现在,微软想推广asp.net
- 乍一听有点蒙,之前用ng和react时也写过类似的功能,但是很顺利(所以忘记具体细节了)。jquery为啥会不行呢?看了一下具体场景,发现原
- 引入为什么要有垃圾回收机制Python中的垃圾回收机制简称(GC),我们在程序的运行中会产生大量的变量用于保存数据,而有时候有些变量已经没有
- 我们提到切片的时候,一般想到的大多数是分割列表。其实它还可以对列表进行拼接,想必这点是很多人不知道的,这就是切片的占位符用法。留在原列表中,
- 本文实例讲述了python获取各操作系统硬件信息的方法。分享给大家供大家参考。具体如下:1. windows使用WMI:(WMI官网地址:h
- 已经记不得是在哪个网站上看到的了,一般情况下对于验证码的校验,大家很容易写成下面这样: <% If Request.Form(&quo
- 将一个CSV格式的文件分割成两个CSV文件本项目可以按照比例将一个csv文件分割成两个csv文件,效果是:在C:\algo_file文件夹下
- 大家在使用python的过程中,应该在敲代码的时候经常遇到str内置函数,为了防止大家搞混,本文整理归纳了str内置函数。1字符串查找类:f
- (GlobalImport全局导入功能)默认新建立的MVC程序中,在Views目录下,新增加了一个_GlobalImport.cshtml文
- view.pyfrom django.views.generic import ListView,DetailViewfrom xxxx.m
- import os import sys import string #以指定模式打开指定文件,获取文件句柄 def getFileIns(
- 有用的符号:| 竖杠后的字符会被原样输出 · 点表示下一级的所有字符都会被原样输出,不再被识别。(就是|的升级版,实现批量) include
- selenium IDE是干什么的Selenium IDE 是一个简单的录制回放工具,它可以录制你在浏览器上的操作,回放脚本时
- Python关于mySQL的连接插件众多,Bottle下也有人专门开发的插件:bottle-mysql具体使用方法见官方,总共感觉其用法限制
- 在CSS初级教程中我们仅仅考虑了HTML选择符──以HTML标签形式出现。你当然可以用类选择符class和标识选择符id来定义自己的选择符。
- 本文主要介绍了一个将 MongoDB 中的数据导入到 MySQL 中的 Python 工具类 MongoToMysql。该工具类实现了获取