Кажется, что независимо от того, как я заполняю struct sigaction
для набора вызова функции sigaction, то .sa_flags
член получает ORed с 0x4000000
или, по крайней мере, как я понимаю, если я позже извлечь dispositon с sigaction(Signum, NULL, &sa)
.Что такое флаг sixaction 0x4000000 в Linux?
страница руководства по sigaction перечислены следующие ORable значения для .sa_flags
:
SA_NOCLDSTOP
SA_NOCLDWAIT
SA_NODEFER
SA_ONSTACK
SA_RESETHAND
SA_RESTART
SA_SIGINFO
0x4000000
до 0 логических значений AND с каждым из указанных выше. Что такое 0x4000000
?
Уверены ли вы, что вам не хватает '0'? 'SA_NODEFER' is 0x4000000' – Barmar
В' /usr/include/x86_64-linux-gnu/asm/signal.h'/'/usr/include/asm-generic/signal.h: 'Я вижу:' #define SA_RESTORER 0x04000000 ' – alk
Это, наверное, так. Это устаревший флаг, поэтому другие включенные файлы закомментированы. – Barmar