如何在python中捕获Joblib / Parallel异常?

时间:2018-01-22 05:56:14

标签: exception-handling try-catch python-multiprocessing python-multithreading joblib

我有joblib的{​​{1}}用例。我已经包含了一些在某些条件下终止工作人员的功能。但是,当我这样做时,我会随机产生Parallel, delayedJoblibWebdriverExceptionMultiprocessing exceptionJoblibURLerror

令我非常高兴的是,我找不到docs中如何(定义?)/捕获例外的任何部分。

当我这样做时:

error

我产生 try: Parallel(delayed(function)) except (JoblibWebdriverException | error | 'Multiprocessing exception'): # written with separate excepts in original code log_errors() 后跟:

name JoblibWebdriverException not defined

如何在python中使用Parallel时捕获未定义的joblib异常?

1 个答案:

答案 0 :(得分:2)

我建议使用concurrent.Futures,它对异常处理具有强大的支持。 joblib臭名昭著的是,由于建立了多进程,无法将子进程的异常引发到主线程。