python进程池,当target函数中遇见某些情况要立即退出本次任务,跳到加载下一次任务怎么实现?
def run(idx):
invl = random.randint(5, 20)
if invl > 10:
sys_exit(0)
else:
sleep(invl)
pool = Pool(3)
for i in range(1, 10):
rslt = pool.apply_async(run, args=(i,))
pool.close()
pool.join()
当interval > 10 后 进程退出,小于10则等待秒数。
可是这样实现,最后三个进程不能被join,而且每次都是fork新的进程,也没有复用前面被exit的进程号。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
从
run
函数返回即可,无需退出进程。