ulimitで

ulimitで

すべてのシグナルがブロックされているプロセスでは、いくつのシグナルをキューに入れることができますか?sigqueue()その制限よりも頻繁に使用するとどうなりますか? それらのシグナルはキューに入れられませんか? エラーが発生しますか?

答え1

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 という値が返されましたが、それ以外の値も返される可能性があります。

関連情報