python并发--进程间数据共享
2021-03-11 03:28
标签:== 子进程 bbb http def aaaaaa UNC append app 进程之间共享数据(数值型): 进程之间共享数据(数组型): 进程之间共享数据(dict,list): 转自:https://www.jb51.net/article/165424.htm python并发--进程间数据共享 标签:== 子进程 bbb http def aaaaaa UNC append app 原文地址:https://www.cnblogs.com/wangbin2188/p/14137535.htmlimport multiprocessing
def func(num):
num.value=10.78 #子进程改变数值的值,主进程跟着改变
if __name__=="__main__":
num=multiprocessing.Value("d",10.0) # d表示数值,主进程与子进程共享这个value。(主进程与子进程都是用的同一个value)
print(num.value)
p=multiprocessing.Process(target=func,args=(num,))
p.start()
p.join()
print(num.value)
import multiprocessing
def func(num):
num[2]=9999 #子进程改变数组,主进程跟着改变
if __name__=="__main__":
num=multiprocessing.Array("i",[1,2,3,4,5]) #主进程与子进程共享这个数组
print(num[:])
p=multiprocessing.Process(target=func,args=(num,))
p.start()
p.join()
print(num[:])
import multiprocessing
def func(mydict,mylist):
mydict["index1"]="aaaaaa" #子进程改变dict,主进程跟着改变
mydict["index2"]="bbbbbb"
mylist.append(11) #子进程改变List,主进程跟着改变
mylist.append(22)
mylist.append(33)
if __name__=="__main__":
with multiprocessing.Manager() as MG: #重命名
mydict=multiprocessing.Manager().dict() #主进程与子进程共享这个字典
mylist=multiprocessing.Manager().list(range(5)) #主进程与子进程共享这个List
p=multiprocessing.Process(target=func,args=(mydict,mylist))
p.start()
p.join()
print(mylist)
print(mydict)
下一篇:Error while downloading 'http://java.sun.com/xml/ns/javaee/javaee_web_services_client_1_2.xs