使用多进程共享Python对象:值(Value)或管理(Manag)

2024-09-30 01:29:06 发布

您现在位置:Python中文网/ 问答频道 /正文

如果我想使用multiprocessing共享一个对象, 根据什么情况,我应该使用以下哪种方法?在

在我看来:

  • Value只适用于ctypes的对象(但是ctypes是什么?是numpy.ndarrayctypes或{})
  • Manager可用于任意Python对象,但我需要包装对象方法

请帮助纠正我的理解。谢谢!在


Tags: 对象方法numpyvaluemanager情况ctypesmultiprocessing
1条回答
网友
1楼 · 发布于 2024-09-30 01:29:06

Value是标量,它只能保存一个数据时间。因此,如果您想在不同的进程之间共享chardoubleint、或{},那么应该使用Array。与Value不同,Array可以包含多个值。在

要查看Python的ctypes中定义的ctypes的广泛列表:请查看以下文档:Fundamental data types。因此,intboollongshort等都是C编程语言中的数据类型。在

对于一个Manager对象,我认为文档中包含了大量的内容:

Managers provide a way to create data which can be shared between different processes, including sharing over a network between processes running on different machines. A manager object controls a server process which manages shared objects. Other processes can access the shared objects by using proxies.

你可能想知道这是怎么回事!你只需要玩玩代码,看看它们是如何组合在一起的,并不复杂。在

相关问题 更多 >

    热门问题