1

我编写了一些代码,旨在通过多处理和子处理一堆 Fortran 可执行文件运行。我试图创建一个简化的示例,我们使用 'df' 调用,如下所示。我在 Ubuntu 12.04 上使用多处理,一切都是 2.7 python。

我在一个类上创建了一个字典,用作“队列”并保存记录。也许我应该使用 multiprocessing.Queue,但目前我不是。

第一个版本在这里: http: //paste.ubuntu.com/1076049/

如果您运行此代码,您会看到在调用 multiprocessing 后,dicts 没有同步......一些谷歌搜索和搜索......然后我了解了 multiprocessing.Manager 用于共享/同步来自本网站搜索的 dicts .

我试图在这里实现它:http: //paste.ubuntu.com/1076054/

但现在我收到关于 KeyError 的错误。这发生在第 43 行,我尝试在字典中引用我刚刚创建的密钥(第 40 行)。这在我上面的第一种方法中不会导致任何错误,但显然在使用 Manager.dict 时我遗漏了一些东西。

我是否误解了如何使用 Manager 类?

4

0 回答 0