Spec-Zone.ru › C

raise

Определено в заголовке <signal.h>
int raise( int sig );

Отправляет сигнал sig программе. Обработчик сигнала, указанный с помощью signal(), вызывается.

Если пользовательская стратегия обработки сигналов не установлена с помощью signal() , то поведение при получении сигнала определяется реализацией (сигнал может быть проигнорирован или вызывается обработчик по умолчанию).

Параметры

sig - отправляемый сигнал. Может быть значением, определённым реализацией, или одним из следующих значений:
SIGABRTSIGFPESIGILLSIGINTSIGSEGVSIGTERM
определяет типы сигналов
(макро-константа)

Возвращаемое значение

ноль при успехе, ненулевое значение при ошибке.

Пример

#include <signal.h>
#include <stdio.h>
 
void signal_handler(int signal)
{
    printf("Received signal %d\n", signal);
}
 
int main(void)
{
    // Install a signal handler.
    signal(SIGTERM, signal_handler);
 
    printf("Sending signal %d\n", SIGTERM);
    raise(SIGTERM);
    printf("Exit main()\n");
}

Вывод:

Sending signal 15
Received signal 15
Exit main()

Ссылки

  • Стандарт C17 (ISO/IEC 9899:2018):
    • 7.14.2.1 Функция raise (с. 194-195)
  • Стандарт C11 (ISO/IEC 9899:2011):
    • 7.14.2.1 Функция raise (с. 267)
  • Стандарт C99 (ISO/IEC 9899:1999):
    • 7.14.2.1 Функция raise (с. 248)
  • Стандарт C89/C90 (ISO/IEC 9899:1990):
    • 4.7.2.1 Функция raise

См. также

signal
устанавливает обработчик сигнала для определенного сигнала
(функция)
Документация C++ для raise

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/c/program/raise

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API