我注意到os._exit(<num>)
::
退出状态为n的进程,而不调用清理处理程序, 刷新stdio缓冲区等。
和sys.exit()
::
“only”引发异常,它只会在调用时退出进程 来自主线程
我需要一个解决方案来关闭一个多处理的应用程序,该应用程序将确保所有进程都关闭(没有左孤立)并且它以最佳状态退出。
附加功能:
我使用python多处理库创建进程,创建继承自multiprocessing.Process
答案 0 :(得分:1)
我最终为每个进程创建了一个Pipe。然后,当主进程关闭时,它可以向所有子进程发送一条消息,它们也应该关闭。
为了使工作正常,你必须定期检查子进程'“do loop”以查看管道中是否有消息,如果是,请检查它们是否为“现在退出“消息。