Multiprocessing.Pool.Map 什么都不做

Multiprocessing.Pool.Map Does Not Do Anything

我正在尝试多处理,因为我试图模仿互联网及其节点的工作方式。我对基本功能没问题,所以我查看了文档并使用了 3.7.0 文档中最基本的示例,这是我现在使用的版本。令我惊讶的是,它没有用。我正在使用 Mac OS High Sierra,版本 10.13.6,如果它与任何事情有关的话。为了清楚起见,这里是代码:

from multiprocessing import Pool

def f(x):
    return x*x

if __name__ == '__main__':
    with Pool(5) as p:
        print(p.map(f, [1, 2, 3]))

我想知道为什么它不起作用,因为它没有显示任何东西,我想要工作版本,谢谢。

For Those Who Doubt It

屏幕截图表明您出于某种原因打开了解释器。

运行 你的文件是这样的:python3 main.py

对我来说,问题是使用:

random.seed = <SOME INT>

以及任何形式的多处理。

pip install multiprocess

from multiprocess import Pool

我像大多数人一样使用了 multiprocessing 包,但没有用。所以我尝试了 multiprocess 包,效果很好。