我第一次使用多处理程序包。我想多次(使用不同的输入)计算一个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输出)。等待“长时间”后,程序似乎无限运行并且从不返回输出。
谁能解释我为什么以及如何解决它?