注册
登录
查看:422 | 回复:19
桃红十三少
请教下,要怎么写这个进程才行啊?谢谢
发表于 2021/10/9 11:59:28
楼主

10.9.1.png

程序猿.py
发表于 2021/10/9 12:01:50
沙发

进程间不能直接传递信息

桃红十三少
发表于 2021/10/9 12:03:59
板凳

是同时写一个列表的问题,同时操作一个全局变量


萌新中萌新
发表于 2021/10/9 12:08:38
4楼

这个data不是用来阻塞多线程不让他往下执行的吗

为啥要打印data

桃红十三少
发表于 2021/10/9 12:12:26
5楼

不过根据python 的逻辑 不都又具体的地址,地址也不冲突,致于里面的指针是 怎么指 怎么 链的 那就是 python 的事情了 啊

按我的 理解 就是 因该是 【【1,2,3】,【1,2,3】,【1,2,3】,【1,2,3】,【1,2,3】】这样的打印效果啊


萌新中萌新
发表于 2021/10/9 12:14:47
6楼

你别把data当参数,用global data 试试


然后往data里面加数据

桃红十三少
发表于 2021/10/9 12:15:56
7楼
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

程序猿.py
发表于 2021/10/9 12:18:08
8楼

进程 用消息队列 进行通信

Global不管用吧

global是用在函数里的

桃红十三少
发表于 2021/10/9 12:21:47
9楼

这样写报错


10.9.2.png

程序猿.py
发表于 2021/10/9 12:23:28
10楼

说了 进程间不能通信

你是个小白吧

进程都没学过吧

桃红十三少
发表于 2021/10/9 12:26:49
11楼

是啊


我想这样 就是 进程间通信了?

立即注册站大爷用户,免费试用全部产品
立即注册站大爷用户,免费试用全部产品