Signals

Linux中的信號隊列深度是什麼

  • November 6, 2015

在一個所有信號都被阻塞的程序上,可以排隊多少個信號?如果我sigqueue()更頻繁地使用該限制怎麼辦?這些信號不會排隊嗎?我會收到錯誤嗎?

使用 ulimit

$ ulimit -a |grep signals 
 pending signals                 (-i) 62384

用普通的 C

$ cat<<EOF > siglimit.c
#include <stdio.h>
#include <unistd.h>
int main() { printf("%ld\n", sysconf( _SC_SIGQUEUE_MAX)); return 0; }
EOF
$ gcc siglimit.c && ./a.out
62384

當然,您可能會得到 62384 以外的值,這是我在系統上得到的。

引用自:https://unix.stackexchange.com/questions/241044