Managers经理/代理形式的数据共享
2024-08-26 21:36:06
代理方式实现进程间共享字典和列表形式的数据,
代码块:
import os
from multiprocessing import Process,Manager def f(d,l,normalList):
d[]=''
d['']=
d[0.25]=None
l.append(os.getpid())
# 普通数组无法实现数据共享,所以不能显示保存所有数据,每次只显示当前数据的最后一位
normalList.append(os.getpid())
# d.add(os.getpid())字典没有add和appen的函数,所以此处无法调用
print(l,'共享数组')
print(normalList,'普通数组')
# print(d,'这是共享字典')
'''
以代理的方式在进程间共享字典或列表形式的数据
''' if __name__=='__main__':
with Manager() as manager:
# 生成一个字典,在多个进程之间共享和传递
d=manager.dict()
# 生成一个列表含5个初始值,在多个进程间传递和共享
l=manager.list(range())
# 设置p_list放置每一个进程
p_list=[]
# 设置普通数组,与代理数组对比不同
normalList=[]
for i in range():
p=Process(target=f,args=(d,l,normalList))
p.start()
p_list.append(p)
# 给每一个进程设置暂停时间
for res in p_list:
res.join()
print(res, 'p_list的res')
print(d,'这是共享字典')
print(l,'这是共享数组')
# print(p_list,'添加所有共享数据的列表')
最新文章
- 2016huasacm暑假集训训练五 F - Monkey Banana Problem
- 异常信息:由于内部错误,服务器无法处理该请求。有关该错误的详细信息,请打开服务器上的 IncludeExceptionDetailInFaults
- Mac上安装 mySql
- NodeJS常用库说明
- 基于注解的SpringMVC整合JPA
- scala学习笔记:函数与方法
- python学习笔记--Django入门二 Django 的模板系统
- css考核点整理(一)-浮动的理解和清除浮动的几种方式
- js 终止页面加载
- servlet方式通过Cookie记住登录时的用户名和密码
- 发布一款仿天猫产品放大镜JQuery插件
- 启动springjar
- linux常用的内核镜像格式
- python开发遇到的坑(2)mongodb安装路径权限问题
- 编译有哪些阶段,动态链接和静态链接的区别 c++
- poj 2438 Children's Dining
- 分析器错误消息: 未能找到 CodeDom 提供程序类型
- [转]OpenStack Neutron解析
- js继承的实现(es5)
- 【洛谷3674】小清新人渣的本愿(莫队,bitset)