[問題] sigaction的mask問題

作者: TMDTMD2487 (ㄚ冰)   2018-11-22 01:18:17
開發平台(Platform): (Ex: Win10, Linux, ...)
Ubuntu Linux
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
clang, gun99
問題(Question):
原本用 signal() 可是後來發現我需要處理更多signal跟mask所以在測試sigaction
我只是一直 fork 跟 exit 然後用自己的 handler 去回收
然後發現還有很多zombie清不乾淨
程式碼(Code):
http://codepad.org/VYcuxlcU
補充說明(Supplement):
試過sigaddset了,waitpid也試過no flag,還是是我對他的mask行為有錯
我是以為它會把他們block直到handler結束,還是有別的方式能處理呢
作者: yvb   2018-11-22 14:40:00
作者: jusnit   2018-11-24 01:39:00
還在block中signal又收到重複時,後到的會被前面的合併掉除非是SIGUSR系列,那就保證送出幾個signal就會收到幾個
作者: tinlans ( )   2018-11-24 02:43:00
不用 handler 直接 SIG_IGN 不行嗎?

Links booklink

Contact Us: admin [ a t ] ucptt.com