0

我是 python 的新手,并且在尝试在两个脚本之间定义共享变量时备货,这样父脚本中共享变量的任何值更改都会立即“同步”到子脚本。

例如:

  1. 每两秒,Parent.py将值 1 到 3 输入到共享变量 A,一次一个
  2. Child.py一直等待 A 的值变化并打印出来。

所以我们应该得到类似的东西:

1

...(2 seconds past)

2

...(2 seconds past)

3

这只是一个例子。我的实际脚本更复杂,需要同时运行,所以我正在考虑使用multiprocessing.pipemultiprocessing.queue 不确定选择哪一个以及如何将其添加到我的脚本中。如果有人可以帮助我,我将不胜感激:)

谢谢!

4

1 回答 1

0

Use multiprocessing.Manager().Queue(). The parent pushes to the queue, and the child pops. The Manager seems like an unecessary intermediate step, since there's a multiprocessing.Queue, but the implementation is much simpler and less prone to deadlocks and other bugs.

http://docs.python.org/library/multiprocessing.html#multiprocessing.managers.SyncManager.Queue

于 2012-10-04T16:43:49.473 回答