Пространства имён
Варианты
Действия

std::signal

Материал из cppreference.com
< cpp‎ | utility‎ | program

 
 
 
Коммунальные услуги Программа поддержки
Программа прекращения
Оригинал:
Program termination
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
abort
exit
quick_exit(C++11)
_Exit(C++11)
Взаимодействие с окружающей средой
Оригинал:
Communicating with the environment
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
Сигналы
Оригинал:
Signals
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
Сигнал типа
Оригинал:
Signal types
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
SIGABRT
SIGFPE
SIGILL
SIGINT
SIGSEGV
SIGTERM
Нелокальные переходы
Оригинал:
Non-local jumps
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
setjmp
longjmp
Типы
Оригинал:
Types
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
jmp_buf
 
Определено в заголовочном файле <csignal>
void (*signal( int sig, void (*handler) (int))) (int);
Устанавливает обработчик ошибок для сигнала sig. Обработчик сигнала может быть настроен так, что по умолчанию обработка будет происходить, сигнал игнорируется, или определяемая пользователем функция называется.
Оригинал:
Sets the error handler for signal sig. The signal handler can be set so that default handling will occur, signal is ignored, or an user-defined function is called.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
Когда обработчик сигнала установлен на функции и сигнала происходит, это реализация определена ли std::signal(sig, SIG_DFL) будет выполняться непосредственно перед началом обработчик сигнала. Кроме того, реализация может предотвратить некоторые реализации определенный набор сигналов, возникающих при обработке сигнала работает.
Оригинал:
When signal handler is set to a function and a signal occurs, it is implementation defined whether std::signal(sig, SIG_DFL) will be executed immediately before the start of signal handler. Also, the implementation can prevent some implementation-defined set of signals from occurring while the signal handler runs.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
Для некоторых сигналов, реализация может вызвать std::signal(sig, SIG_IGN) при запуске программы. Для остальных, реализация должна вызывать std::signal(sig, SIG_DFL).
Оригинал:
For some of the signals, the implementation may call std::signal(sig, SIG_IGN) at the startup of the program. For the rest, the implementation must call std::signal(sig, SIG_DFL).
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
Если пользователь функция возвращает при обращении SIGFPE, SIGILL, SIGSEGV или любой другой определяется реализацией сигнал указанием вычислительных исключением, поведение не определено. В большинстве реализаций программы завершается.
Оригинал:
If the user defined function returns when handling SIGFPE, SIGILL, SIGSEGV or any other implementation-defined signal specifying a computational exception, the behavior is undefined. In most implementations the program terminates.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
Если обработчик сигнала называют в результате std::abort или std::raise, поведение не определено, если любое из следующих требований не соблюдается
Оригинал:
If the signal handler is called as a result of std::abort or std::raise, the behavior is undefined if any of the following requirements is not followed:
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
  • обработчик сигнала вызывает std::raise.
    Оригинал:
    the signal handler calls std::raise.
    Текст был переведён автоматически через Google Translate.
    Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
  • обработчик сигнала относится к объекту статическим срок хранения которых не объявлен как volatile std::sig_atomic_t.
    Оригинал:
    the signal handler refers to an object of static storage duration which is not declared as volatile std::sig_atomic_t.
    Текст был переведён автоматически через Google Translate.
    Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
  • обработчик сигнала вызывает любую функцию в стандартной библиотеке, за исключением std::abort, std::_Exit, или std::signal с первым аргументом не является номер сигнала, в настоящее время обрабатывается.
    Оригинал:
    the signal handler calls any function within the standard library, except std::abort, std::_Exit, or std::signal with the first argument not being the number of the signal currently handled.
    Текст был переведён автоматически через Google Translate.
    Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

Содержание

[править] Параметры

sig -
сигнал, чтобы установить обработчик сигнала. Это может быть выполнение определенного значения или одно из следующих значений:
определяет типы сигналов
Оригинал:
defines signal types
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(константа-макрос) [edit]
Оригинал:
the signal to set the signal handler to. It can be an implementation-defined value or one of the following values:
определяет типы сигналов
Оригинал:
defines signal types
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(константа-макрос) [edit]
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
handler -
обработчик сигнала. Это должна быть одна из следующих:
  • SIG_DFL макросов. Обработчик сигнала устанавливается по умолчанию обработчик сигнала.
  • SIG_IGN макросов. Сигнал игнорируется.
  • Указатель на функцию. Подпись функции должны быть эквивалентны следующим:
void fun(int sig);
Оригинал:
the signal handler. This must be one of the following:
  • SIG_DFL macro. The signal handler is set to default signal handler.
  • SIG_IGN macro. The signal is ignored.
  • pointer to a function. The signature of the function must be equivalent to the following:
void fun(int sig);
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

[править] Возвращаемое значение

Предыдущий обработчик сигнала на успех или неудача на SIG_ERR (установка обработчик сигнала может быть отключен на некоторых реализациях).
Оригинал:
Previous signal handler on success or SIG_ERR on failure (setting a signal handler can be disabled on some implementations).
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

[править] Пример

[править] См. также

запускает обработчик сигнала для конкретного сигнала
Оригинал:
runs the signal handler for particular signal
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(функция) [edit]
C documentation for signal