我正在尝试编写一个在本地(自定义,非常移植自unix).NET进程监视器/启动器/杀手的控制下运行的python应用程序。
开始这个过程很好。杀死进程是有效的,但它是不洁净的,并且没有调用python清理。
要求进程监视器终止特定的PID并基本完成:
process = Process.GetProcessById(pid);
process.Kill()
(道歉,如果没有意义,我是一个Unix极客,真的不是C#程序员!)
C#应用程序可以在Forms.Application.ApplicationExit事件上注册处理程序并捕获exit事件以进行清理。我怎么能在python(2.7)下做同样的事情? signal
模块似乎无法捕捉到这一点。
作为替代方案,我可以修改进程杀手来以更适合Python的方式结束进程(例如,signal
可以捕获),如果你可以建议如何做到这一点。
或者我是否过多地询问Windows python应用程序?