
这是Python 3代码:
from multiprocessing import Process,Array,Lockfrom ctypes import c_wchar_pimport timedef run_child(a): time.sleep(2) print(a[0]) # print foo print(a[1]) # print bar print(a[2]) # print baz print("SET foofoo barbar bazbaz") a[0] = "foofoo" a[1] = "barbar" a[2] = "bazbaz"lock = Lock()a = Array(c_wchar_p,range(3),lock=lock)p = Process(target=run_child,args=(a,))p.start()print("SET foo bar baz")a[0] = "foo"a[1] = "bar"a[2] = "baz"time.sleep(4)print(a[0]) # print foofooprint(a[1]) # print barbarprint(a[2]) # print bazbaz 有人知道我做错了什么吗?
问候
强尼
应该更像
a = Array(c_wchar_p,('','',''),lock=lock) 从docs
总结c_wchar_p
Represents the C wchar_t * datatype,which must be a pointer to a zero-terminated wIDe character string. The constructor accepts an integer address,or a string.
以上是内存溢出为你收集整理的Python3:包含进程之间字符串的共享数组全部内容,希望文章能够帮你解决Python3:包含进程之间字符串的共享数组所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)