Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 找到想要的值后,如何在joblib中打破并行化?_Python 3.x_Parallel Processing_Joblib - Fatal编程技术网

Python 3.x 找到想要的值后,如何在joblib中打破并行化?

Python 3.x 找到想要的值后,如何在joblib中打破并行化?,python-3.x,parallel-processing,joblib,Python 3.x,Parallel Processing,Joblib,假设我有这样一个函数: def f(angle): if angle % 5==0: return angle return None 然后,我以以下方式使用joblib.Parallel和joblib.delayed: from joblib import Parallel, delayed results = Parallel(n_jobs=4)(delayed(f)(angle) for angle in range(360)) 这给了我所有我想要

假设我有这样一个函数:

def f(angle):
    if angle % 5==0:
        return angle 

    return None 
然后,我以以下方式使用joblib.Parallel和joblib.delayed:

from joblib import Parallel, delayed
results = Parallel(n_jobs=4)(delayed(f)(angle) for angle in range(360))
这给了我所有我想要的值,只有当角度可以被5整除时,它们才会与“无”不同。然后我做下面的事情

for x in results:
   if x is not None:
       return x 
有了这个,我返回的第一个结果不是无。但是,如果我们需要做一些费时费力的计算呢?然后我们希望在并行化过程中完成这项工作。我不想为了找到我想要的价值而强制所有的并行化。我想知道我是否可以在并行化过程中立即获得这个值,然后并行化停止并给出我想要的值。使用joblib库实现这一点的最佳方法是什么