浅谈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使用chardet判断字符串编码的方法
Mar 13 Python
python中kmeans聚类实现代码
Feb 23 Python
Python3连接SQLServer、Oracle、MySql的方法
Jun 28 Python
python实现石头剪刀布小游戏
Jan 20 Python
Python上下文管理器全实例详解
Nov 12 Python
python3实现弹弹球小游戏
Nov 25 Python
Python3打包exe代码2种方法实例解析
Feb 17 Python
利用matplotlib为图片上添加触发事件进行交互
Apr 23 Python
python各种excel写入方式的速度对比
Nov 10 Python
Python的logging模块基本用法
Dec 24 Python
Python 解决空列表.append() 输出为None的问题
May 23 Python
pytorch 运行一段时间后出现GPU OOM的问题
Jun 02 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
PHP中如何定义和使用常量
2013/02/28 PHP
ThinkPHP调试模式与日志记录概述
2014/08/22 PHP
php实现将数组转换为XML的方法
2015/03/09 PHP
jquery UI 1.72 之datepicker
2009/12/29 Javascript
基于jquery的自定义鼠标提示效果 jquery.toolTip
2010/11/14 Javascript
JS trim去空格的最佳实践
2011/10/30 Javascript
JS实现金额转换(将输入的阿拉伯数字)转换成中文的实现代码
2013/09/30 Javascript
jQuery学习笔记之 Ajax操作篇(二) - 数据传递
2014/06/23 Javascript
纯css实现窗户玻璃雨滴逼真效果
2015/08/23 Javascript
JavaScript操作class和style样式代码详解
2016/02/13 Javascript
JavaScipt中栈的实现方法
2016/02/17 Javascript
深入解析AngularJS框架中$scope的作用与生命周期
2016/03/05 Javascript
把普通对象转换成json格式的对象的简单实例
2016/07/04 Javascript
原生javascript 学习之js变量全面了解
2016/07/14 Javascript
微信小程序 上传头像的实例详解
2017/10/27 Javascript
Vuex提升学习篇
2018/01/11 Javascript
微信小程序实现换肤功能
2018/03/14 Javascript
vue 中动态绑定class 和 style的方法代码详解
2018/06/01 Javascript
JavaScript原型对象、构造函数和实例对象功能与用法详解
2018/08/04 Javascript
JavaScript ES2019中的8个新特性详解
2019/02/20 Javascript
关于JavaScript 数组你应该知道的事情(推荐)
2019/04/10 Javascript
微信小程序绘制图片发送朋友圈
2019/07/25 Javascript
从零学python系列之浅谈pickle模块封装和拆封数据对象的方法
2014/05/23 Python
Python实例之wxpython中Frame使用方法
2014/06/09 Python
Python设计足球联赛赛程表程序的思路与简单实现示例
2016/06/28 Python
浅析python中的分片与截断序列
2016/08/09 Python
解决python2.7 查询mysql时出现中文乱码
2016/10/09 Python
程序员写Python时的5个坏习惯,你有几条?
2018/11/26 Python
详细整理python 字符串(str)与列表(list)以及数组(array)之间的转换方法
2019/08/30 Python
美国潜水装备、水肺潜水和浮潜设备商店:Leisure Pro
2018/08/08 全球购物
基层党组织建设整改方案
2014/09/16 职场文书
党性分析材料格式
2014/12/19 职场文书
酒店开业主持词
2015/07/02 职场文书
坚持不是死撑,更重要的是心态
2019/08/19 职场文书
MongoDB安装使用并实现Python操作数据库
2021/06/28 MongoDB
浅谈Redis缓冲区机制
2022/06/05 Redis