
进程间不能直接传递信息
是同时写一个列表的问题,同时操作一个全局变量
这个data不是用来阻塞多线程不让他往下执行的吗
为啥要打印data
不过根据python 的逻辑 不都又具体的地址,地址也不冲突,致于里面的指针是 怎么指 怎么 链的 那就是 python 的事情了 啊
按我的 理解 就是 因该是 【【1,2,3】,【1,2,3】,【1,2,3】,【1,2,3】,【1,2,3】】这样的打印效果啊
你别把data当参数,用global data 试试
然后往data里面加数据
from multiprocessing import Process
def fun1(i,data):
data[i]=[1,2,3]
if __name__ == __main__ :
process_list = []
data=[]
for i in range(5): #开启5个子进程执行fun1函数
d=[]
data.append(d)
p = Process(target=fun1,args=(i,data)) #实例化进程对象
p.start()
process_list.append(p)
for i in process_list:
p.join()
print(data)帮修改下啊,怎么个 global data
进程 用消息队列
进行通信
Global不管用吧
global是用在函数里的
这样写报错

说了 进程间不能通信
你是个小白吧
进程都没学过吧
是啊
我想这样 就是 进程间通信了?