- 从主进程中,我创建了3个子进程,并且传递了一个'common'类的实例...将同一个实例传递给了所有3个子进程。
- 这个共同的类有一本字典和队列(其中含有大量的项目)
- 这些子进程检索该队列
- “项目”对于这些项目,我称之为REST服务来获取一些数据在“项目”
- 我这个信息添加到“通用”字典
- 没有错误
然而,当我尝试访问从主过程本词典,其空。Python多处理 - 共享内存
然而,当我尝试访问从主过程本词典,其空。Python多处理 - 共享内存
对于进程间共享状态,最灵活的方法是使用multiprocessing.Manager
。您也可以使用例如multiprocessing.Array
,但只能包含相同类型的数据。
感谢您的回复。
我设法解决使用 multiprocessing.Manager问题()。字典()
这是最好的方式....我不能完全肯定。我想我需要阅读更多关于多处理。
我认为具有挑战性的事实是,多处理模块提供了许多功能,并且作为初学者,知道用于工作的正确“工具”非常具有挑战性。
我开始使用线程...然后移动到进程....然后使用队列....然后使用管理器。但是当我阅读了更多关于这个主题的文章后,我发现Python还有很多东西可以提供。
你能粘贴代码吗? –
我认为这个问题在变量 –
的实例化的地方是可以预料的。请参阅[Python:可能在两个独立进程之间共享内存数据](http://stackoverflow.com/q/1268252/4279) – jfs