我想在多个 python 脚本之间共享多个资源。理想情况下,我要做的是运行我的主程序。它包含一些脚本范围的变量。然后我想将完全相同的程序 fork 到一个新的 shell 中,并让它访问我的脚本范围变量。
我正在研究多处理,但我不确定是否有其他方法更好,例如使用管道?
最佳答案
您可以使用 multiprocessing
中的 Value
和 Array
跨进程共享内存。
来自 multiprocessing
的 documentation 的示例:
from multiprocessing import Process, Value, Array
def f(n, a):
n.value = 3.1415927
for i in range(len(a)):
a[i] = -a[i]
if __name__ == '__main__':
num = Value('d', 0.0)
arr = Array('i', range(10))
p = Process(target=f, args=(num, arr))
p.start()
p.join()
print(num.value)
print(arr[:])
将输出:
3.1415927
[0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
关于python - 在python进程之间共享资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55004267/