在man 7 signal
中顯示SIGUSR1爲SIGUSR1 30,10,16 Term User-defined signal 1
。如果我在我的C代碼中使用SIGUSR1,我會得到值10.是否有任何方法可以訪問其他值30 & 16?是不是還好在我的信號處理程序明確地使用他們喜歡如何使用SIGUSR1替代值
if(signo == 16)
{
printf("SIGUSR1 type 2 received\n");
}
編輯:在我的代碼,存在使用SIGUSR1已經case語句。我需要一個自定義信號。我知道有RTSIGNALS和其他選項。但我想知道他們爲什麼在手冊頁中指定了16,30,並且從未提供過使用它的方法。
爲了便於攜帶,您應該總是使用'if(signo == SIGUSR1){}'。 –
「我想知道他們爲什麼在手冊頁中指定16,30」 - 他們說爲什麼;看到我的答案。 –