首页 > 编程语言 > 详细

python 中的Array,Value及内存共享

时间:2015-07-01 11:41:51      阅读:252      评论:0      收藏:0      [点我收藏+]

官网文档的例子

 1 from multiprocessing import Process, Value, Array
 2 
 3 def f(n, a):
 4     n.value = 3.1415927
 5     for i in range(len(a)):
 6         a[i] = -a[i]
 7 
 8 if __name__ == __main__:
 9     num = Value(d, 0.0)
10     arr = Array(i, range(10))
11 
12     p = Process(target=f, args=(num, arr))
13     p.start()
14     p.join()
15 
16     print num.value
17     print arr[:]

结果:

 1 3.1415927

2 [0, -1, -2, -3, -4, -5, -6, -7, -8, -9] 

分析:模式Array,Value达到内存共享的目标

如果是自建一个对象并绑定一项value属性,及另一个list.再调用子函数。在子函数中改动对象的value及另一个list.是没有作用的。

在C++中可以通过引用,在子函数中一样可以改动

 

python 中的Array,Value及内存共享

原文:http://www.cnblogs.com/liunnis/p/4612491.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!