为了账号安全,请及时绑定邮箱和手机立即绑定

multiprocessing如何当子进程捕捉到异常,主进程和所有子进程终止

multiprocessing如何当子进程捕捉到异常,主进程和所有子进程终止

当年话下 2019-02-17 12:58:36
大家好,最近在使用multiprocessing处理问题,大致代码如下: def work(i): #执行代码 print('child success') pass def throw_error(e): raise e def main(): pool = multiprocessing.Pool(processes=10) for i in range(0,5000): pool.apply_async(work, (i,), error_callback=throw_error) pool.close() pool.join() print('success') pass 这段代码在运行过程中,如果子进程有异常会被主进程捕捉到并抛出异常,整个过程也不会继续运行但也不会结束,需要在命令行ctl+c强制结束。我想问如果让当主进程捕捉到子进程异常,全部进程直接结束,代码部分应该怎么修改?
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 1843 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信