Python进程Multiprocessing模块原理解析


Posted in Python onFebruary 28, 2020

先看看下面的几个方法:

  • star() 方法启动进程,
  • join() 方法实现进程间的同步,等待所有进程退出。
  • close() 用来阻止多余的进程涌入进程池 Pool 造成进程阻塞。

参数:

target 是函数名字,需要调用的函数

args 函数需要的参数,以 tuple 的形式传入

用法:

multiprocessing.Process(group=None, target=None, name=None, args=(), kwargs={}, *, daemon=None)

写一个的例子:

from multiprocessing import Pool
import os,time


def pr(str):
  print("The " + str + " is %s" %(os.getpid()))
  time.sleep(1)
  print("The " + str + " is close")


if __name__ == "__main__":

  print('-------------------------------')
  print("the current pid: "+ str(os.getpid()))
  # 默认为自己电脑的核数
  p = Pool(2)
  for i in range(5):
    p.apply_async(pr,args=('xdxd',))
  p.close()
  p.join()
  print("----------close-----------------")

通过结果可以看出,是2个进程同时启动,同时启动的进程数与pool中设置的数量和自己电脑的核数有关

结果:

-------------------------------
the current pid: 9562
The xdxd is 9563
The xdxd is 9564
The xdxd is close
The xdxd is close
The xdxd is 9563
The xdxd is 9564
The xdxd is close
The xdxd is close
The xdxd is 9563
The xdxd is close
----------close-----------------

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python减少循环层次和缩进的技巧分析
Mar 15 Python
Python实现对一个函数应用多个装饰器的方法示例
Feb 09 Python
运行django项目指定IP和端口的方法
May 14 Python
使用 Python 实现微信群友统计器的思路详解
Sep 26 Python
Pandas 重塑(stack)和轴向旋转(pivot)的实现
Jul 22 Python
Python 函数list&read&seek详解
Aug 28 Python
python使用socket实现的传输demo示例【基于TCP协议】
Sep 24 Python
pip 安装库比较慢的解决方法(国内镜像)
Oct 06 Python
Django实现celery定时任务过程解析
Apr 21 Python
python温度转换华氏温度实现代码
Dec 06 Python
Django使用django-simple-captcha做验证码的实现示例
Jan 07 Python
如何在Python中创建二叉树
Mar 30 Python
python 实现多维数组(array)排序
Feb 28 #Python
python对数组进行排序,并输出排序后对应的索引值方式
Feb 28 #Python
Python使用Socket实现简单聊天程序
Feb 28 #Python
在python3中使用shuffle函数要注意的地方
Feb 28 #Python
Python对称的二叉树多种思路实现方法
Feb 28 #Python
pycharm如何实现跨目录调用文件
Feb 28 #Python
python GUI库图形界面开发之PyQt5菜单栏控件QMenuBar的详细使用方法与实例
Feb 28 #Python
You might like
zf框架的Filter过滤器使用示例
2014/03/13 PHP
thinkphp3.2.2实现生成多张缩略图的方法
2014/12/19 PHP
js 刷新页面的代码小结 推荐
2010/04/02 Javascript
基于Bootstrap+jQuery.validate实现Form表单验证
2014/12/16 Javascript
jQuery中(function($){})(jQuery)详解
2015/07/15 Javascript
jquery带动画效果幻灯片特效代码
2015/08/27 Javascript
网页前端登录js按Enter回车键实现登陆的两种方法
2016/05/10 Javascript
基于JSON格式数据的简单jQuery幻灯片插件(jquery-slider)
2016/08/10 Javascript
js 模仿锚点定位的实现方法
2016/11/19 Javascript
vue-cli如何引入bootstrap工具的方法
2017/10/19 Javascript
vue中如何创建多个ueditor实例教程
2017/11/14 Javascript
jquery.pagination.js分页使用教程
2018/10/23 jQuery
使用webpack打包后的vue项目如何正确运行(express)
2018/10/26 Javascript
javascript的this关键字详解
2019/05/20 Javascript
Node.js在图片模板上生成二维码图片并附带底部文字说明实现详解
2019/08/07 Javascript
防止Layui form表单重复提交的实现方法
2019/09/10 Javascript
基于Vue+ElementUI的省市区地址选择通用组件
2019/11/20 Javascript
js通过循环多张图片实现动画效果
2019/12/19 Javascript
javascript中contains是否包含功能实现代码(扩展字符、数组、dom)
2020/04/07 Javascript
[53:36]Liquid vs VP Supermajor决赛 BO 第三场 6.10
2018/07/05 DOTA
python冒泡排序简单实现方法
2015/07/09 Python
Python编程判断一个正整数是否为素数的方法
2017/04/14 Python
python 读取文件并替换字段的实例
2018/07/12 Python
python实现连续变量最优分箱详解--CART算法
2019/11/22 Python
Tensorflow中的dropout的使用方法
2020/03/13 Python
一篇文章搞懂python的转义字符及用法
2020/09/03 Python
美国经典刺绣和字母儿童服装特卖:Smocked Auctions
2018/07/16 全球购物
Tenstickers法国:墙贴和装饰贴纸
2019/08/26 全球购物
寒假实习自荐信
2014/01/26 职场文书
大学生会计职业生涯规划范文
2014/02/28 职场文书
销售顾问工作计划书
2014/08/15 职场文书
产品委托授权书范本
2014/09/16 职场文书
python实现ROA算子边缘检测算法
2021/04/05 Python
python基础之函数的定义和调用
2021/10/24 Python
「海贼王」112.9万粉丝纪念图标公布
2022/03/21 日漫
python自动获取微信公众号最新文章的实现代码
2022/07/15 Python