signal_pending(current)用法

signal_pending(current)

檢查當前進程是否有信號處理,返回不爲0表示有信號需要處理。
返回 -ERESTARTSYS 表示信號函數處理完畢後重新執行信號函數前的某個系統調用。也就是說,如果信號函數前有發生系統調用,在調度信號處理函數之前,內核會檢查系統調用的返回值,看看是不是因爲這個信號而中斷了系統調用.

如果返回值-ERESTARTSYS,並且當前調度的信號具備-ERESTARTSYS屬性,系統就會在用戶信號函數返回之後再執行該系統調用。 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章