码迷,mamicode.com
首页 > 编程语言 > 详细

python 中的Array,Value及内存共享

时间:2015-07-01 11:44:09      阅读:234      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!