Linux

sigkill 和 sigabrt 有什麼區別?

  • September 14, 2017

前幾天,我在使用 sigabrt 的 python 應用程序中遇到了停止,但我知道 init 應該發送一個 sigkill 信號。我很好奇它們之間有什麼區別,如果有的話?有人可以給我一些資源來閱讀更多相關資訊嗎?

有來自的解釋:

www.quora.com/What-is-the-difference-between-SIGABRT-and-SIGKILL-in-Linux

SIGKILL 和 SIGABRT 是發送給程序以終止它的兩種類型的信號。

SIGKILL 相當於“kill -9”,用於殺死殭屍程序,即已經死亡並等待其父程序收割它們的程序。SIGABRT 相當於“kill -6”,用於終止/中止正在執行的程序。

SIGKILL 信號不能被擷取或忽略,並且接收程序在接收到該信號後不能執行任何清理。SIGABRT 信號可以被擷取,但不能被阻塞。


所以換句話說,你的程序可以正確地對 SIGABRT 做出反應並啟動優雅退出。

引用自:https://serverfault.com/questions/873695