多进程共享进程之间的不可序列化对象

多进程共享进程之间的不可序列化对象,第1张

进程共享进程之间的不可序列化对象

在大多数情况下,将现有对象的引用传递给另一个进程并不是很理想。相反,您可以创建要在流程之间共享的类:

class MySharedClass:    # stuff...

然后,您将像这样创建一个代理管理器:

import multiprocessing.managers as mclass MyManager(m.baseManager):    pass # Pass is really enough. Nothing needs to be done here.

然后,您在该Manager上注册课程,如下所示:

MyManager.register("MySharedClass", MySharedClass)

然后,实例化了经理并启动了经理之后,

manager.start()
您就可以使用创建类的共享实例
manager.MySharedClass
。这应该适合所有需求。返回的代理的工作原理与原始对象完全相同,除了文档中描述的某些例外。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5644875.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存