如何在多进程之间共享值?

2024-05-29 09:49:40 发布

您现在位置:Python中文网/ 问答频道 /正文

如何将一个进程中的值发送到另一个进程?例如,我有一些类似于这个代码段的东西。我想用xFunc打印值。有人能解释一下我怎么做吗?多谢各位

def yFunc():
    value = 5

def xFunc():
    print(value)

def smap(f):
    return f()

def main():
    f_x = functools.partial(xFunc)
    f_y = functools.partial(yFunc)

    with Pool() as pool:
        res = pool.map(smap, [f_x, f_y])


if __name__ == '__main__':
    main()

编辑:值不是常数,它是不断变化的

我找到了解决问题的方法。以下是解决方案:

https://stackoverflow.com/a/58208695/16660763


Tags: return进程valuemaindef代码段withpartial
2条回答

Python提供了一些工具来实现它

考虑到{a1}、{a2}和{a3}

有几种方法。 一种方法是使用全局关键字。像这样:

def yFunc():
    global value
    value = 5

def xFunc():
    print(value + 1)

yFunc()
xFunc()

或者像这样:

value = 5

def yFunc():
    global value
    value = value + 1

def xFunc():
    print(value)

yFunc()
xFunc()

另一种方法是将变量传递给函数,如下所示:

def yFunc():
    value = 5
    return value

def xFunc(x):
    print(x)

xFunc(yFunc())

希望你是这么问的

相关问题 更多 >

    热门问题