pytest - 多线程提速

python 复制代码
import time

def test1_test1():
    time.sleep(1)

    assert 1 == 1, "1==1"


def test1_test2():
    time.sleep(1)

    assert 1 == 1, "1==1"

上面2个函数,执行情况:

  • 正常执行时,花费 2.08s
  • 2个进程执行时,花费 1.18s
  • 2个线程执行时,花费 1.15s

问题:python有GIL(全局解释器锁),同一时刻只能执行一条线程的字节码指令,那么为什么pytest执行用例时,多线程会加快执行速度?

暂时得到的答案:time sleep 属于IO bound的任务。在IO bound的时候切换CPU去执行其他的字节码

相关推荐
2401_841495647 分钟前
【DeepSeek系列】论文《mHC: Manifold-Constrained Hyper-Connections》全流程复现详解(附Python代码)
人工智能·pytorch·python·深度学习·论文复现·deepseek·mhc模型
汤姆yu8 分钟前
基于python大数据的地震数据可视化分析系统
大数据·python·信息可视化
阿蔹13 分钟前
Python-基础语法五-数据可视化、对象、类、多态、继承、封装、抽象类
开发语言·python
小白学大数据18 分钟前
未来趋势:AI 时代下 python 爬虫技术的发展方向
运维·人工智能·爬虫·python·自动化
dagouaofei19 分钟前
2026 年年度工作计划 PPT:AI 自动生成方案横向对比
人工智能·python·powerpoint
reasonsummer32 分钟前
【教学类-70-06】20260104“折纸-花纹镜”(花纹图案+上下打孔+无学号框)小2班第一次尝试
python·通义万相
YJlio1 小时前
PsPing 学习笔记(14.8):常见错误与排障实战(超时、拒绝连接、权限问题)
开发语言·笔记·python·学习·django·pdf·pygame
wjykp1 小时前
part6 PyTorch
人工智能·pytorch·python
拾柒SHY2 小时前
Python爬虫入门自学笔记
笔记·爬虫·python
Franciz小测测2 小时前
如何实现 Web 触发后的“离线”升级?Systemd 异步机制与 A/B 状态机切换详解
python·部署·自动升级·离线升级