首页 > 解决方案 > Multiprocessing.Pool 未编译

问题描述

我第一次使用 Multiprocessing 包。我想多次计算 ML 函数(使用不同的输入)。

我尝试了以下方法,其中 series 是可迭代的, fbp_prediction 是返回列表的函数:

import multiprocessing as mp
from tqdm import tqdm

p = mp.Pool(mp.cpu_count())
predictions = list(tqdm(p.imap(fbp_prediction, series), total=len(series)))
p.close()
p.join()
print("--- %s seconds ---" % (time.time() - start_time))

当它运行时,进程似乎保持在 0%(tqdm 输出)。在等待了“长时间”之后,程序似乎无限运行并且永远不会返回输出。

谁能解释我为什么以及如何解决它?

标签: pythonpython-multiprocessing

解决方案


推荐阅读