我是python中多处理的新手。我遇到了一个算法程序。我已经坚持了将近一个星期。我将非常感谢你的帮助。 我将展示算法。 多个进程中的全局变量 X , k 。
循环,而k < 100(k是共享内存计数器)
a). k=k+1, globaly
b). Read y from the global memory with locks
c). compute _g=G(k,y,x)
d). USING _g to update the y and X,globally, with locks
END
答案 0 :(得分:1)
您不能跨进程共享变量或任何其他内置类型。为了跨进程共享数据,multiprocessing
模块有两种类型:
Queue
Pipe
检查:Exchanging objects between processes文件。
返回使用管道和一些锁/信号量实现的进程共享队列。当进程首先将项目放入队列时,将启动一个进给器线程,该线程将对象从缓冲区传输到管道中。
返回表示管道末端的Connection对象的对(conn1,conn2)。
如果duplex为True(默认值),则管道是双向的。如果duplex为False,则管道是单向的:conn1只能用于接收消息,conn2只能用于发送消息。