在SIGKILL之后从Python优雅地退出

时间:2014-09-14 10:50:29

标签: python signals

问题是无法捕获SIGKILL,是否有办法确保在程序终止时执行代码块?我有一个启动五个子进程并更改平台硬件状态的进程 - 它处理SIGTERM和SIGINT,但是当子进程继续运行时,SIGKILL将终止主进程。有没有办法总是执行清理,或者我必须接受SIGKILL会使计算机处于“损坏”状态吗?

1 个答案:

答案 0 :(得分:1)

SIGKILL无法处理。此信号用于关键情况,您不希望程序能够忽略该信号,并且您希望强制它被杀死。 SIGTERM是补充,当你想在程序关闭前让程序清理时需要使用它

有关详细信息,请参阅:http://en.wikipedia.org/wiki/Unix_signal#Handling_signals