浅谈Python 多进程默认不能共享全局变量的问题


Posted in Python onJanuary 11, 2019

主进程与子进程是并发执行的,进程之间默认是不能共享全局变量的(子进程不能改变主进程中全局变量的值)。如果要共享全局变量需要用(multiprocessing.Value("d",10.0),数值)(multiprocessing.Array("i",[1,2,3,4,5]),数组)(multiprocessing.Manager().dict(),字典)(multiprocessing.Manager().list(range(5)))。进程通信(进程之间传递数据)用进程队列(multiprocessing.Queue(),单向通信),管道( multiprocessing.Pipe() ,双向通信)。

import multiprocessing
import time
import os
 
datalist=['+++'] #全局变量,主进程与子进程是并发执行的,他们不能共享全局变量(子进程不能改变主进程中全局变量的值)
 
def adddata():
 global datalist
 datalist.append(1)
 datalist.append(2)
 datalist.append(3)
 print("子进程",os.getpid(),datalist)
 
 
if __name__=="__main__":
 
 p=multiprocessing.Process(target=adddata,args=())
 p.start()
 p.join()
 datalist.append("a")
 datalist.append("b")
 datalist.append("c")
 print("主进程",os.getpid(),datalist)

以上这篇浅谈Python 多进程默认不能共享全局变量的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
讲解python参数和作用域的使用
Nov 01 Python
python fabric实现远程操作和部署示例
Mar 25 Python
django 按时间范围查询数据库实例代码
Feb 11 Python
python 在屏幕上逐字显示一行字的实例
Dec 24 Python
python登录WeChat 实现自动回复实例详解
May 28 Python
centos7中安装python3.6.4的教程
Dec 11 Python
通过实例简单了解Python中yield的作用
Dec 11 Python
获取python运行输出的数据并解析存为dataFrame实例
Jul 07 Python
Python3爬虫中Ajax的用法
Jul 10 Python
Python使用socket模块实现简单tcp通信
Aug 18 Python
scrapy利用selenium爬取豆瓣阅读的全步骤
Sep 20 Python
代码复现python目标检测yolo3详解预测
May 06 Python
Python设计模式之组合模式原理与用法实例分析
Jan 11 #Python
python通过配置文件共享全局变量的实例
Jan 11 #Python
Python设计模式之命令模式原理与用法实例分析
Jan 11 #Python
Python设计模式之职责链模式原理与用法实例分析
Jan 11 #Python
对Python中实现两个数的值交换的集中方法详解
Jan 11 #Python
对Python模块导入时全局变量__all__的作用详解
Jan 11 #Python
Python实现批量执行同目录下的py文件方法
Jan 11 #Python
You might like
星际争霸, 教主第一视角, ZvT经典龙蛇演义
2020/03/02 星际争霸
php程序内部post数据的方法
2015/03/31 PHP
PHP之十六个魔术方法详细介绍
2016/11/01 PHP
JS Pro-深入面向对象的程序设计之继承的详解
2013/05/07 Javascript
jQuery实现图片信息的浮动显示实例代码
2013/08/28 Javascript
js 获取页面高度和宽度兼容 ie firefox chrome等
2014/05/14 Javascript
jQuery基于扩展简单实现倒计时功能的方法
2016/05/14 Javascript
nodeJs内存泄漏问题详解
2016/09/05 NodeJs
js实现tab切换效果
2017/02/16 Javascript
前端框架学习总结之Angular、React与Vue的比较详解
2017/03/14 Javascript
vue项目常用组件和框架结构介绍
2017/12/24 Javascript
搭建vue开发环境
2018/07/19 Javascript
原生JS实现DOM加载完成马上执行JS代码的方法
2018/09/07 Javascript
在vue项目中正确使用iconfont的方法
2018/09/28 Javascript
JS实现电商商品展示放大镜特效
2020/01/07 Javascript
Js图片点击切换轮播实现代码
2020/07/27 Javascript
vue使用svg文件补充-svg放大缩小操作(使用d3.js)
2020/09/22 Javascript
three.js显示中文字体与tween应用详析
2021/01/04 Javascript
Python开发编码规范
2006/09/08 Python
python 链接和操作 memcache方法
2017/03/04 Python
浅谈python连续赋值可能引发的错误
2018/11/10 Python
python实现网页自动签到功能
2019/01/21 Python
Python 获取指定文件夹下的目录和文件的实现
2019/08/30 Python
python 基于selenium实现鼠标拖拽功能
2020/12/24 Python
CSS3中的clip-path使用攻略
2015/08/03 HTML / CSS
利用canvas实现图片下载功能来实现浏览器兼容问题
2019/05/31 HTML / CSS
加拿大在线隐形眼镜和眼镜店:VisionPros
2019/10/06 全球购物
2014年服务员工作总结
2014/11/18 职场文书
家长会欢迎词
2015/01/23 职场文书
置业顾问岗位职责
2015/02/09 职场文书
神秘岛读书笔记
2015/07/01 职场文书
银行工作心得体会范文
2016/01/23 职场文书
导游词之南京夫子庙
2019/12/09 职场文书
浅谈Python3中datetime不同时区转换介绍与踩坑
2021/08/02 Python
Java移除无效括号的方法实现
2021/08/07 Java/Android
六个好看实用的 HTML + CSS 后台登录入口页面
2022/04/28 HTML / CSS