当前位置: 首页 > news >正文

测试开发必备技能:Python多线程处理

什么是进程

  • 进程是执行中的程序

  • 拥有独立地址空间,内存,数据栈等

  • 操作系统统一管理

  • 派生(fork或spawn)新进程

  • 进程间通信(IPC)方式共享信息

什么是线程

  • 同进程下执行,并共享相同的上下文

  • 线程间的信息共享和通信更加容易

  • 多线程并发执行

  • 需要同步原语

python与线程

  • 解释器主循环

  • 主循环中只有一个控制线程在执行

  • 使用全局解释器锁(GIL)

GIL保证一个线程

  • 设置GIL

  • 切换进一个线程去运行

  • 执行下面的操作之一

    指定数量的字节码指令

    线程主动让出控制权

  • 把线程设置回睡眠状态(切换出线程)

  • 解锁GIL

  • 重复上述步骤

两种线程管理

Python提供了两种线程管理模式。

  • _thread:提供了基本的线程和锁。

  • threading:提供了更高级别,功能更全的线程管理。threading底层使用了_thread。

支持同步机制

支持守护线程

_thread模块

使用_thread模块案例1

代码:

运行结果:

注意:这里主方法中必须加上time.sleep(6),否则主进程退出后,所有子进程都将强行退出,所有子线程将不被执行。这里也该模块的缺点之一,因为它没有守护线程的概念。


以下结果是不加time.sleep(6)的效果。

使用_thread模块案例2-利用锁

上述案例中其实存在缺点。在实际应用中,我们并不确定主线程需要等待子线程几秒钟,子线程才能结束。所以本案例加入锁,可以有效的解决这一问题。

代码:

运行结果:

threading模块

使用threading模块案例

threading自带锁,可以更有效解决上述案例【使用_thread模块案例2-利用锁】的问题。

代码:

运行结果:

注意:loop 0 和loop 1的执行先后顺序不是一定的。

Thread类

使用threading模块案例-重写threading.Thread

我们可以继续改进上述案例【使用threading模块案例】,使得代码更加符合面向对象编程的思想。

代码:

运行结果:

感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取

http://www.jsqmd.com/news/284513/

相关文章:

  • java_ssm12企业人事工资管理系统
  • 621-0022-AR隔离分析输入模块
  • 那曲市英语雅思培训辅导机构推荐,2026权威出国雅思课程中心学校口碑排行榜推荐
  • C/C++ Linux网络编程2 - Socket编程与简单UDP服务器客户端 - 教程
  • 人工磨题 VS 宏智树 AI 设计?实证调研的效率革命藏在这里
  • 【Jmeter】深度解剖Jmeter的二次开发
  • 宏智树AI藏大招!课程论文不用熬,3步写出高分稿
  • 621-3580RC输入模块
  • 2026 1月晚练记录
  • 2025年市场新动向:中式服装加盟哪家强?最新排行揭晓,中式服装加盟排行榜技术领航者深度解析
  • 软件测试or车载测试,到底该怎么选?
  • 那曲市英语雅思培训辅导机构推荐,2026权威出国雅思课程中心学校口碑排行榜
  • 宏智树 AI:一键生成三类高分 PPT,学术汇报再也不用熬大夜
  • 分布式架构:Dubbo 协议如何做接口测试
  • 详细介绍:STM32百问百答:从硬件到软件全面解析
  • java_ssm13低值高校办公耗材易耗品管理信息系统的设计与实现_1s9ke
  • 量子开发崛起:软件工程师必学的3个入门技能
  • DeepSeek+LangChain+DeepDiff:智能测试数据自动对比工具
  • 智慧水务为什么越来越多项目选择 BL118|水务物联网边缘计算方案解析
  • 广州最好的研究生留学机构评选,学员满意度高成核心优势
  • 2026合肥优质设备搬运吊装公司推荐榜
  • 指数期权备兑策略量化实现
  • 探索超声波方案在汽车门板塑焊机中的奇妙应用
  • 2026年国内专业的工厂吸污厂家排行,知名的工厂吸污排名精选优质品牌助力工程采购
  • 青岛研究生留学机构top10推荐,收费透明,值得信赖与选择
  • Backtrader平台下指数期权备兑策略回测实现
  • 泉州留学机构top10排名公布,学员满意度高成选择关键
  • 2026年健身教练培训机构排名解读及靠谱院校推荐
  • 深圳top10研究生留学机构选择指南:反馈及时是关键因素
  • 2030年预测:软件测试将不再是一个岗位,而是一种能力