Provided by: manpages-ru-dev_4.27.0-1_all bug

НАИМЕНОВАНИЕ

       sysv_signal - обрабатывает сигналы согласно семантике System V

БИБЛИОТЕКА

       Стандартная библиотека языка C (libc, -lc)

ОБЗОР

       #define _GNU_SOURCE         /* See feature_test_macros(7) */
       #include <signal.h>

       typedef void (*sighandler_t)(int);

       sighandler_t sysv_signal(int signum, sighandler_t handler);

ОПИСАНИЕ

       Функция sysv_signal() ожидает те же аргументы и выполняет ту же задачу, что и signal(2).

       Однако sysv_signal() предоставляет ненадёжную семантику сигналов System V, то есть: a) обработчик сигнала
       сбрасывается  в  значение  по  умолчанию,  при его вызове; b) доставка последующих экземпляров сигнала не
       блокируется на время выполнения обработчика сигнала; c) если  обработчик  сигнала  прерывает  (некоторые)
       блокирующие системные вызовы, то системный вызов автоматически не перезапускается.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

       Функция sysv_signal() возвращает предыдущее значение обработчика сигнала или SIG_ERR при ошибке.

ОШИБКИ

       Как в signal(2).

АТРИБУТЫ

       Описание терминов данного раздела смотрите в attributes(7).
       ┌─────────────────────────────────────────────────────────────────────┬──────────────────────┬──────────┐
       │ ИнтерфейсАтрибутЗначение │
       ├─────────────────────────────────────────────────────────────────────┼──────────────────────┼──────────┤
       │ sysv_signal()                                                       │ Безвредность в нитях │ MT-Safe  │
       └─────────────────────────────────────────────────────────────────────┴──────────────────────┴──────────┘

ВЕРСИИ

       Избегайте использования sysv_signal(), используйте вместо неё sigaction(2).

       В  старых  Linux-системах  sysv_signal() и signal(2) были эквивалентны. Однако в новых системах signal(2)
       предоставляет надежную семантику сигналов. Подробности смотрите в signal(2).

       Используемый параметр sighandler_t является расширением GNU; данный тип определён только  в  том  случае,
       если определён макрос _GNU_SOURCE.

СТАНДАРТЫ

       Отсутствуют.

СМОТРИТЕ ТАКЖЕ

       sigaction(2), signal(2), bsd_signal(3), signal(7)

ПЕРЕВОД

       Русский  перевод  этой  страницы  руководства разработал(и) Alexander Golubev <fatzer2@gmail.com>, Azamat
       Hackimov  <azamat.hackimov@gmail.com>,  Hotellook,   Nikita   <zxcvbnm3230@mail.ru>,   Spiros   Georgaras
       <sng@hellug.gr>,  Vladislav  <ivladislavefimov@gmail.com>,  Yuri Kozlov <yuray@komyakino.ru>, Иван Павлов
       <pavia00@gmail.com> и Kirill Rekhov <krekhov.dev@gmail.com>

       Этот перевод является свободной программной документацией; он распространяется на условиях  общедоступной
       лицензии  GNU  (GNU  General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или
       более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

       Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите  об  этом
       разработчику(ам)   по   его(их)  адресу(ам)  электронной  почты  или  по  адресу  списка рассылки русских
       переводчиков.

Справочные страницы Linux 6.9.1                   2 мая 2024 г.                                   sysv_signal(3)