gpt4 book ai didi

python - 将 joblib 与导入函数一起使用时出错

转载 作者:行者123 更新时间:2023-12-01 02:30:53 26 4
gpt4 key购买 nike

我正在使用 joblib 并行化我的 python 3.5 代码。
如果我这样做:

from modules import f
from joblib import Parallel, delayed

if __name__ == '__main__':
Parallel( n_jobs = n_jobs,backend = "multiprocessing")(delayed(f)(i) for i in range( 10 ))

代码不起作用。相反:

from joblib import Parallel, delayed

def f( i ):
# my func ...

if __name__ == '__main__':
Parallel( n_jobs = n_jobs, backend = "multiprocessing")(delayed(f)(i) for i in range(10))

这有效!

有人可以解释为什么我必须将所有函数放在同一个脚本中吗?

这确实不切实际,因为在模块中有很多我编码的函数,我不想在主脚本中复制/粘贴。

最佳答案

我也遇到过类似的问题。当我从导入调用函数时,它只是卡住,而当我调用本地函数时,它工作正常。通过使用多线程而不是像那样的多处理来解决它

Parallel( n_jobs  =  n_jobs, backend='threading')(delayed(f)(i) for i in range(10))

关于python - 将 joblib 与导入函数一起使用时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46828371/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com