在多个python进程之间共享单例状态

时间:2014-10-10 16:49:00

标签: python dictionary singleton multiprocessing

我有一个Python应用程序,我创建了几个生成一个或多个multiprocessing.Process对象的对象。我想创建一个这些进程可以访问的对象,这将允许它们从文件中检索和保存键/值对。我还希望进程能够访问其他进程已保存的键/值对。应用程序在我只希望写入在父进程控制的特定时间发生的环境中运行。

我最初的想法是创建一个包含字典的单例包装器,该字典将在实例化时加载值并在指示时写入文件。我很快发现,这只会导致为每个进程创建一个单例,这个进程自上次任何进程将值保存到文件时都不知道生成的任何值。

有没有办法在单例中实现字典,该字典将在进程之间共享,而不必将字典显式传递给multiprocessing.Process对象的构造函数?我也对替代解决方案持开放态度(即不使用单身人士)。

0 个答案:

没有答案