С 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, которое я получил в своей системе.

Связанный контент