Linux信号 六 信号与线程的关系
生活随笔
收集整理的這篇文章主要介紹了
Linux信号 六 信号与线程的关系
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
" POSIX表示可移植操作系統接口(Portable Operating System Interface of UNIX,
縮寫為 POSIX ),POSIX標準定義了操作系統應該為應用程序提供的接口標準,是IEEE為要在各
種UNIX操作系統上運行的軟件而定義的一系列API標準的總稱.POSIX標準意在期望獲得源代碼級別的軟件可移植性。換句話說,為一個POSIX兼容的操作系
統編寫的程序,應該可以在任何其它的POSIX操作系統(即使是來自另一個廠商)上編譯執行。"
POSIX標準對多線程情況下的信號機制提出來一些要求:
1. 信號處理函數必須在多線程進程的所有線程間共享,但是每個線程要有自己的掛起信號集合和阻塞信號掩碼。
2. POSIX函數kill/sigqueue必須面向進程,而不是進程下某個特定的線程。
3. 發送給多線程應用的信號僅遞送給一個線程,這個線程是由內核從不會阻塞該信號的線程中隨意選出來的。
4. 如果發送一個致命信號到多線程,那么內核將殺死該應用的所有線程,而不僅僅是接收信號的那個線程。
基本上Linux也都遵循這些需求。
?
?
?
?
?
?
?
參考資料:
1. 《Linux環境編程,從應用到內核》高峰,李彬著
?
?
?
?
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的Linux信号 六 信号与线程的关系的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux信号 五 信号挂起与信号掩码操
- 下一篇: Linux 内核源码分析 IPv6报文接