如何进行Python线程的多线程展示
发表于:2025-02-16 作者:千家信息网编辑
千家信息网最后更新 2025年02月16日,如何进行Python线程的多线程展示,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。什么多线程?多线程,就是多个独立的运行单位,同时执
千家信息网最后更新 2025年02月16日如何进行Python线程的多线程展示
如何进行Python线程的多线程展示,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
什么多线程?
多线程,就是多个独立的运行单位,同时执行同样的事情。
想想一下,文章发布后同时被很多读者阅读,这些读者在做的事情'阅读'就是一个一个的线程。
多线程就是多个读者同时阅读这篇文章。重点是:同时有多个读者在做阅读这件事情。
如果是多个读者,分时间阅读,最后任意时刻只有一个读者在阅读,虽然是多个读者,但还是单线程。
我们再拿前面分享的代码:关注和点赞。
def dianzan_guanzhu(): now = datetime.datetime.now() name = "python萌新" print("%s name:%s" % (now, name)) time.sleep(1) result = "好棒!" + name + " 关注雷学委,学会了开发知识!" print("%s result:%s" % (now, result)) return result
我们看看下面的代码:
#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 2021/11/21 12:02 上午# @Author : LeiXueWei# @CSDN/Juejin/Wechat: 雷学委# @XueWeiTag: CodingDemo# @File : __init__.py.py# @Project : helloimport threadingimport datetimeimport timedef dianzan_guanzhu(): now = datetime.datetime.now() name = "python萌新" print("%s name:%s" % (now, name)) time.sleep(1) result = "好棒!" + name + " 关注雷学委,学会了开发知识!" print("%s result:%s" % (now, result)) return resultfor i in range(3): mythread = threading.Thread(name="t-" + str(i), target=dianzan_guanzhu) print("mythread:", mythread) print("is_alive:", mythread.is_alive()) mythread.start() print("is_alive:", mythread.is_alive())
Thread类可以传入name指定线程名字。
直接复制运行,这里我们创建了3个线程。
它们依次调用了dianzan_guanzhu函数
下面是运行结果:
这3个线程不同时间打印完成了,但是内容打印乱序了,甚至还串行了。
读者同学可以多运行几次。
获取活跃线程相关数据
threading.active_count
函数: 可以获取活跃线程数。threading.current_thread
函数:可以获取活跃线程对象,这样我们可以获取这样获取线程名称:threading.current_thread().getName()。
前文说过了,加上主线程,一共是4个线程。
运行下面代码看看:
#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 2021/11/21 12:02 上午# @Author : LeiXueWei# @CSDN/Juejin/Wechat: 雷学委# @XueWeiTag: CodingDemo# @File : __init__.py.py# @Project : helloimport randomimport threadingimport datetimeimport timedef dianzan_guanzhu(): thread_name = threading.current_thread().getName() now = datetime.datetime.now() print("线程启动了:", thread_name) name = "python萌新"+thread_name print("%s - %s name:%s" % (thread_name, now, name)) time.sleep(1) result = "好棒!" + name + " 关注雷学委,学会了开发知识!" print("%s - %s result:%s" % (thread_name, now, result)) return resultfor i in range(3): mythread = threading.Thread(name="t-" + str(i), target=dianzan_guanzhu) print("mythread:", mythread) print("is_alive:", mythread.is_alive()) mythread.start() ac = threading.active_count() print("active_count:", ac)
如果我们把活跃线程数打印,那么等3个线程都start调用了。
加上主线程,最多是4个活跃线程。
今天先展示一下多个线程执行同个任务的代码实现。
关于如何进行Python线程的多线程展示问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。
线程
读者
多个
运行
代码
同时
知识
事情
函数
就是
问题
开发
内容
时间
更多
篇文章
utf-8
帮助
解答
不同
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
2014携程大数据库
深圳卜鸣网络技术公司天眼查
女生做软件开发的工作
网络安全法知识卡片
网络安全的手抄报模板a3
与网络安全相关的国家标准有
虹口区综合软件开发服务是什么
软件开发关键技术2020
服务器进销存系统管理
黑龙江利末记互联网科技公司
历史数据库未启动
四川大学考网络安全研究生
轻量应用服务器是虚拟主机吗
steam版雀魂是哪个服务器
广东安卓软件开发哪家可靠
软件开发职业技能培训几年
数据库中关系完整性包括
智能小车服务器
防溺水防沉迷网络安全主题班会
平板电脑域名服务器
临淄软件开发培训
芜湖安卓软件开发定制
ddt 数据库
云服务器安装swarm
服务器名称无法解析
虹口区网络软件开发质量保障
园林景观软件开发
网络安全工作思维
hp服务器电源 接口
网络安全主题的视频