【问题标题】:are global variables visible to subprocess and changable by subprocess?全局变量对子进程可见并且可由子进程更改吗?
【发布时间】:2025-12-17 17:45:01
【问题描述】:

关于 Python 2.7 的快速问题

全局变量对子进程可见吗?

子进程可以改变全局变量的值吗?

非常感谢。

【问题讨论】:

  • 如果您想在子进程中运行密切相关的 Python 代码,请考虑 multiprocessing module:它允许通过将对象作为函数参数(以及其他 IPC 方法)在进程之间发送对象

标签: python variables subprocess global


【解决方案1】:

不,全局变量对子进程不可见。变量对每个进程都是私有的。如果要共享变量,则需要使用某种形式的进程间通信。

【讨论】:

【解决方案2】:

进程不共享general operating system 术语中的变量。使用一些通信机制,如消息传递、共享内存等来实现进程间通信。

【讨论】:

【解决方案3】:

也许最简单的方法是将这些写入文件并在另一个进程中从文件中读取,尽管这可能需要额外的时间。

【讨论】: