python 进程池实现 pool
进程池实现
必要性
- 进程的创建和销毁过程消耗的资源比较多
- 当任务量众多,每个任务在很短时间内完成时,需要平方的创建和销毁进程,此时对计算机压力比较大
- 进程池技术很好的解决了以上问题
原理
创建一定数量的进程来处理事件,事件处理完进程不退出而是继续处理其他事件,直到所有事件全都处理完毕统一销毁.增加进程的重复利用,降低资源消耗
进程池实现
- 创建进程池对象,放入适当的进程
from multiprocessing import PoolPool(processes)
功能: 创建进程池对象
参数: 指定进程数量,默认根据系统自动判断
- 将事件加入进程池队列执行
pool.apply_async(func,args,kwds)
功能: 使用进程池执行 func 事件
参数: func 事件函数args 援助 给func按位置传参kwds 字典 给func按照键值传参
返回值: 返回函数事件对象
关闭进程池
pool.close() 功能: 关闭进程池
回收进程池中进程
功能: 回收进程池中进程
图解
简单的代码例子
"""
进程池使用实例
"""from multiprocessing import Pool
from time import sleep, ctime# 进程池事件
def worker(msg):sleep(2)print(ctime(), '--', msg)if __name__ == '__main__':# 创建进程池pool = Pool()# 向进程池队列添加事件for i in range(10):msg = ' Tedu %d ' % ipool.apply_async(func=worker, args=(msg,))# 关闭进程池pool.close()pool.join()
控制台输出
Wed Dec 15 13:50:20 2021 -- Tedu 0
Wed Dec 15 13:50:20 2021 -- Tedu 1
Wed Dec 15 13:50:20 2021 -- Tedu 2
Wed Dec 15 13:50:20 2021 -- Tedu 3
Wed Dec 15 13:50:20 2021 -- Tedu 4
Wed Dec 15 13:50:20 2021 -- Tedu 5
Wed Dec 15 13:50:20 2021 -- Tedu 6
Wed Dec 15 13:50:20 2021 -- Tedu 7
Wed Dec 15 13:50:21 2021 -- Tedu 8
Wed Dec 15 13:50:21 2021 -- Tedu 9
python 进程池实现 pool相关推荐
- Python 进程池 multiprocessing.Pool - Python零基础入门教程
目录 一.Python 进程池 multiprocessing.Pool 介绍 二.Python 进程池 multiprocessing.Pool 使用 三.猜你喜欢 零基础 Python 学习路线推 ...
- Python进程池multiprocessing.Pool的用法
一.multiprocessing模块 multiprocessing模块提供了一个Process类来代表一个进程对象,multiprocessing模块像线程一样管理进程,这个是multiproce ...
- python进程池multiprocessing.Pool和线程池multiprocessing.dummy.Pool实例
本文简单介绍python进程模块multiprocessing提供的进程池和线程池功能. 进程池: 进程池的使用有四种方式:apply_async.apply.map_async.map.其中appl ...
- Python进程池之pool.map()函数传入多参数
一 定义与解释 对于python代码,多线程其实是个假的,因为每次计算的时候,实质上只有一个线程计算.使用多线程时,是几个线程之间切换计算,就像轮班工作一下,适合处理I/O密集型的任务. 对于pyth ...
- python进程池multiprocessing.Pool运行错误:The freeze_support() line can be omitted if the program is not g
测试代码如下: 原文:https://blog.csdn.net/xiemanr/article/details/71700531 # -*- coding: utf-8 -*- import mul ...
- 【Python】Python进程池multiprocessing.Pool八个函数对比:apply、apply_async、map、map_async、imap、starmap...
1.apply 和 apply_async 一次执行一个任务,但 apply_async 可以异步执行,因而也可以实现并发. 2.map 和 map_async 与 apply 和 apply_asy ...
- python进程池win出错,python进程池multiprocessing.Pool运行错误:
错误: Traceback (most recent call last): File "", line 1, in File "C:\Program Files\Ana ...
- python 进程池 等待数量_python 进程池multiprocessing.Pool
44.Python 进程池multiprocessing.Pool 最后更新于:2020-03-21 11:53:37 python进程池Pool 和前面讲解的python线程池 类似,虽然使用多进程 ...
- python进程池调用实例方法_Python进程池Pool应用实例分析
本文实例讲述了Python进程池Pool应用.分享给大家供大家参考,具体如下: 当需要创建的子进程数量不多时,可以直接利用multiprocessing中的Process动态成生多个进程,但如果是上百 ...
最新文章
- 电动车逆变器的基础知识
- php zend框架入门,Zend Framework 入门——快速上手
- linux cp命令使用
- vs编译应用程序不依赖运行vs环境
- SAP UI5 应用开发教程之二十 - SAP UI5 的表达式绑定用法讲解
- 在JDK 9中将InputStream传输到OutputStream
- LeetCode-105:从前序与中序遍历序列构造二叉树
- 谈谈头条创作者最近几个月的一些改变吧
- c语言程序和指令的关系为,C语言程序设计课件第1章计算机组成与程序设计语言汇总.ppt...
- HDU 5265 pog loves szh II (二分查找)
- WebEx Recorder
- 直方图均衡化算法、直方图匹配算法 C++ 代码
- C基础(三)函数的使用
- 第一性原理计算软件攻略-利用VESTA绘制差分电荷密度图解
- 精简高效的CSS命名准则和方法
- 设计低反射率触摸屏显示器以实现阳光下的可读性
- IP签名档PHP源码,简单几步,教你制作自己的显IP签名档
- autojs ui界面漂亮模板2
- C#减少图片文件大小和尺寸(转)
- QT 实现WINDOWS下网络设置功能(IP、子网掩码、网关、DNS)
热门文章
- 【JS】JavaScript快速介绍
- 如何系统学习ElasticSearch、Kibana、Logstash:死磕 Elasticsearch 方法论(初学者必看)
- RPG黑暗之光学习笔记 摄像头设置
- 研报精选230314
- ---已搬运--:[0CTF 2016]piapiapia -----代码审计+字符串逃逸+数组绕过长度限制+以及一下小知识点 preg_match()用数组,而且注意if是正确判断,还是错误判断
- 李开复:十年后中国AI市场将占据半壁江山,我已退掉3点钟区块链群
- c语言 string indexof,c语言indexof的用法有哪些
- 翻译的概念和翻译的用途
- 单字节字符串、宽字符串和多字节字符串
- 多串口卡在装车计量系统中的应用 (转)