简单多处理池挂在Jupyter笔记本中



我试图在Jupyter笔记本中运行一些多处理,使用python 3.7.0版本。然而,即使是一个非常简单的例子似乎也会无限期地挂起。在阅读了这个答案之后,我尝试显式地调用。close和。join,但它仍然挂起。示例代码如下,谁能告诉我什么是错的?

import multiprocessing as mp
def fun(x):
return 2*x
with mp.Pool() as pool:
args = list(range(10))
res = pool.map(fun, args)
pool.close()
pool.join()

另一个解决方案是使用multiprocess模块,它与使用Jupyter时的多处理库相同。

对于我来说,@Booboo提出的解决方案是有效的。

  • 将函数写入外部文件
  • 将其导入到.ipynb文件

最新更新