Python单线程、多线程、多进程运行效率评测对比
近日用python做图像处理,涉及到推拉流使用了python的多进程机制,结果导致程序运行效率大大下降,后来在反复试验中又发现子进程的速度比主进程快很多,特地做此测评。先上结论
评测结果
程序运行速度对比如图,图中蓝色条为主程(主进程、主线程),红色条为子程(子进程、子线程),分别评测了单个主进程、主线程及一个子线程、主进程及一个子进程、单个子线程、单个子进程的运行速度。
由图可以看到,python使用最常用的Cpyhton解释器时,多线程功能很鸡肋,主线程和子线程的速度都大大下降;而多进程的主进程速度不变,子进程速度很快,总体速度得到了提升;而单独的子进程的和子线程运行速度都比单独的主进程快很多。以下是具体评测过程
主进程测评
使用以下代码测试单个主进程的耗时,取总耗时的平均值作为基准
count = 0
while
Python单线程、多线程、多进程运行效率评测对比相关推荐
- Python单线程/多线程
Python里的多线程是假的多线程,不管有多少核,同一时间只能在一个核中进行操作! 利用Python的多线程,只是利用CPU上下文切换的优势,看上去像是并发,其实只是单线程. import threa ...
- Python中多线程多进程与协程的区别
进程:一个运行的程序(代码)就是一个进程,没有运行的代码叫程序,进程是系统资源分配的最小单位,进程拥有自己独立的内存空间,所以进程间数据不共享,开销大. 线程: 调度执行的最小单位,也叫执行路径,不能 ...
- python代理ip多进程_静听网+python爬虫+多线程+多进程+构建IP代理池
目标网站:静听网 网站url:http://www.audio699.com/ 目标文件:所有在线听的音频文件 附:我有个喜好就是晚上睡觉听有声书,然而很多软件都是付费才能听,免费在线网站虽然能听,但 ...
- 静听网+python爬虫+多线程+多进程+构建IP代理池
目标网站:静听网 网站url:http://www.audio699.com/ 目标文件:所有在线听的音频文件 附:我有个喜好就是晚上睡觉听有声书,然而很多软件都是付费才能听,免费在线网站虽然能听,但 ...
- python爬虫多线程多进程示例
# -*- coding: utf-8 -*- '''美图录''' #------------------------------------------------- import re impor ...
- python io密集型应用案例-Python中单线程、多线程和多进程的效率对比实验实例
python的多进程性能要明显优于多线程,因为cpython的GIL对性能做了约束. Python是运行在解释器中的语言,查找资料知道,python中有一个全局锁(GIL),在使用多进程(Thread ...
- Python多线程多进程、异步、异常处理等高级用法
文章目录 前言 多线程多进程 多线程 多进程 协程 总结 异步 基本概念 异步编程 asyncio aiohttp 异常 常见异常 异常处理 自定义异常 lambda表达式 lambda表达式用法 高 ...
- python:一文搞懂多线程,多进程,异步协程的使用场景
本文将使用场景化为案例,将单线程,多线程,多进程,异步协程的速度进行对比 对比速度时, >表示 速度快于 >>表示速度远快于 =表示速度差不多 >>>> ...
- python和c运行速度的对比实验_Python中单线程、多线程和多进程的效率对比实验...
原标题:Python中单线程.多线程和多进程的效率对比实验 文 | 饒木陽 Python是运行在解释器中的语言,查找资料知道,python中有一个全局锁(GIL),在使用多进程(Thread)的情况下 ...
最新文章
- 一场科技盛宴,一次“盈”满天下 安创成长营五期Demo Day完美收官
- set_origin_pose算子说明
- 学Java好不好 要避开哪些雷区
- wxWidgets:弹出 wxWidgets 示例
- android判断多个按钮,Android开发之判断有无虚拟按键(导航栏)的实例
- data source from bit.ly
- 牛客 Bang! Bang!(动态规划)
- Linux6、7 系列 安装、卸载mysql
- 关于bootstrap和webinf下访问其它文件的方法 2021-04-17
- 语音情感识别的优选方法与流程
- [JAVA] TicTacToe实现Socket通信(一)
- mysql 插入毫秒数据_MySQL存储毫秒数据的方法
- ESP32播放MP3音乐-无需SD卡-WM8978-ESP32解码MP3
- 解决Microsoft Store应用商店打不开 代码: 0x80131500
- Oracle SQL
- 无法完成压缩(zipped)文件来提取向导,怎么解决
- oracle指定导出低版本号,oracle 高版本导出低版本数据库并且导入到低版本数据的方法...
- 干货 | Web前端优化及工具集锦
- Android OpenGL ES 从入门到精通系统性学习教程
- 综合评价方法(一)------基础知识