sig_atomic_t
From cppreference.net
|
Определено в заголовочном файле
<signal.h>
|
||
|
typedef
/* unspecified */
sig_atomic_t
;
|
||
Целочисленный тип, к которому можно обращаться как к атомарной сущности даже при наличии асинхронных прерываний, вызванных сигналами.
Пример
Запустить этот код
#include <signal.h> #include <stdio.h> volatile sig_atomic_t gSignalStatus = 0; void signal_handler(int status) { gSignalStatus = status; } int main(void) { /* Install a signal handler. */ signal(SIGINT, signal_handler); printf("SignalValue: %d\n", gSignalStatus); printf("Sending signal: %d\n", SIGINT); raise(SIGINT); printf("SignalValue: %d\n", gSignalStatus); }
Возможный вывод:
SignalValue: 0 Sending signal: 2 SignalValue: 2
Ссылки
- Стандарт C17 (ISO/IEC 9899:2018):
-
- 7.14/2 Обработка сигналов <signal.h> (стр: 194-195)
- Стандарт C11 (ISO/IEC 9899:2011):
-
- 7.14/2 Обработка сигналов <signal.h> (стр: 265)
- Стандарт C99 (ISO/IEC 9899:1999):
-
- 7.14/2 Обработка сигналов <signal.h> (стр: 246)
- Стандарт C89/C90 (ISO/IEC 9899:1990):
-
- 4.7 SIGNAL HANDLING <signal.h>
Смотрите также
|
устанавливает обработчик сигнала для конкретного сигнала
(функция) |
|
|
C++ documentation
для
sig_atomic_t
|
|