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

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

       sigpause - автоматически разблокирует сигналы и ждёт прерывания

БИБЛИОТЕКА

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

ОБЗОР

       #include <signal.h>

       [[deprecated]] int sigpause(int sigmask);  /* BSD (but see VERSIONS) */

       [[deprecated]] int sigpause(int sig);      /* POSIX.1 / SysV / UNIX 95 */

ОПИСАНИЕ

       Не используйте эту функцию. Вместо неё используйте sigsuspend(2).

       Функция  sigpause()  предназначена  для  ожидания  какого-нибудь  сигнала.  Она изменяет сигнальную маску
       процесса (набор блокируемых сигналов) и ждёт  появления  сигнала.  При  прибытии  сигнала  первоначальная
       сигнальная маска восстанавливается.

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

       Если  sigpause()  возвращает  выполнение,  то это означает, что она была прервана сигналом и возвращается
       значение -1, а errno присваивается значение EINTR.

АТРИБУТЫ

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

ВЕРСИИ

       В Linux эта процедура является системным вызовом только на архитектуре Sparc (sparc64).

       glibc uses the BSD version if the _BSD_SOURCE feature test macro is defined and  none  of  _POSIX_SOURCE,
       _POSIX_C_SOURCE, _XOPEN_SOURCE, _GNU_SOURCE, or _SVID_SOURCE is defined.  Otherwise, the System V version
       is used, and feature test macros must be defined as follows to obtain the declaration:

       •  Начиная с glibc 2.26: _XOPEN_SOURCE >= 500

       •  glibc 2.25 and earlier: _XOPEN_SOURCE

       Начиная  с  glibc  2.19,  в  <signal.h>  представлена  только  версия  System  V;  в приложениях, которые
       использовали BSD-версию sigpause(), нужно заменить его на sigsuspend(2).

СТАНДАРТЫ

       POSIX.1-2008.

ИСТОРИЯ

       POSIX.1-2001.  Obsoleted in POSIX.1-2008.

       Классическая BSD-версия этой функции появилась в  4.2BSD.  Она  изменяет  сигнальную  маску  процесса  на
       sigmask.  В  UNIX  95  стандартизована  несовместимая  с  System  V  версия этой функции, которая удаляет
       сигнальной маски процесса только указанный сигнал sig. Проблемная ситуация двух несовместимых  функций  с
       одним  именем была исправлена функцией sigsuspend(2), которая ожидает аргумент с типом sigset_t * (вместо
       int).

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

       kill(2), sigaction(2), sigprocmask(2), sigsuspend(2), sigblock(3), sigvec(3), feature_test_macros(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                  16 июня 2024 г.                                     sigpause(3)