Python 进程之间共享数据(全局变量)
来源:互联网 发布:学云计算用了解嵌入式 编辑:程序博客网 时间:2024/06/01 07:11
转自 :http://blog.csdn.net/houyanhua1/article/details/78244288
进程之间共享数据(数值型):
- import multiprocessing
-
- def func(num):
- num.value=10.78
-
- if __name__=="__main__":
- num=multiprocessing.Value("d",10.0)
- 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[:])
进程之间共享数据(dict,list):- import multiprocessing
-
- def func(mydict,mylist):
- mydict["index1"]="aaaaaa"
- mydict["index2"]="bbbbbb"
- mylist.append(11)
- mylist.append(22)
- mylist.append(33)
-
- if __name__=="__main__":
- with multiprocessing.Manager() as MG:
- mydict=multiprocessing.Manager().dict()
- mylist=multiprocessing.Manager().list(range(5))
-
- p=multiprocessing.Process(target=func,args=(mydict,mylist))
- p.start()
- p.join()
-
- print(mylist)
- print(mydict)
多线程用全局变量(global)
'); })();