4

我注意到os._exit(<num>)::

以状态 n 退出进程,不调用清理处理程序、刷新 stdio 缓冲区等。

sys.exit()::

“only”引发异常,只有在主线程调用时才会退出进程

我需要一个解决方案来关闭一个多处理应用程序,以确保所有进程都关闭(没有留下孤立的)并且它以可能的最佳状态退出。

附加功能:

我正在使用 python 多处理库创建进程,方法是创建继承自的类multiprocessing.Process

4

1 回答 1

1

我最终为每个进程创建了一个管道。然后当主进程关闭时,它可以向所有子进程发送一条消息,它们也应该关闭。

为了使这项工作正确,您必须定期检查子进程的“do loop”以查看管道中是否有消息,如果有,请检查它们是否是“立即退出”信息。

于 2012-12-05T18:27:00.103 回答