Provided by: manpages-ru-dev_4.19.0-7_all bug

ИМЯ

       sigpending, rt_sigpending - проверка ожидающих сигналов

LIBRARY

       Standard C library (libc, -lc)

СИНТАКСИС

       #include <signal.h>

       int sigpending(sigset_t *set);

   Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):

       sigpending():
           _POSIX_C_SOURCE

ОПИСАНИЕ

       Вызов  sigpending()  возвращает  набор сигналов, которые ожидают доставки в вызвавшую нить
       (т.е., сигналы, возникшие пока были заблокированы). Маска ожидающих сигналов  возвращается
       в set.

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

       sigpending()   returns  0  on  success.   On  failure,  -1 is returned and errno is set to
       indicate the error.

ОШИБКИ

       EFAULT Аргумент set указывает на память в недопустимой части адресуемого пространства.

СТАНДАРТЫ

       POSIX.1-2001, POSIX.1-2008.

ЗАМЕЧАНИЯ

       Подробная информация о работе с наборами сигналов есть на странице sigsetops(3).

       Если сигнал заблокирован и имеет обработчик «игнорировать», то он не добавляется  в  маску
       ожидающих сигналов при генерации.

       Набор  сигналов,  ожидающих  обработки  в  нити,  представляет  собой  объединение  набора
       сигналов, ожидающих обработки в этой нити и  набора  сигналов,  ожидающих  обработки  всем
       процессом (см. signal(7)).

       Потомок, созданный с помощью fork(2), первоначально имеет пустой набор ожидающих сигналов;
       набор ожидающих сигналов сохраняется при вызове execve(2).

   Отличия между библиотекой C и ядром
       Первоначально,  системный  вызов  Linux  назывался  sigpending().  Однако,  с  добавлением
       сигналов реального времени в Linux 2.2, 32-битный аргумент sigset_t неизменяемого размера,
       поддерживаемый этим системным вызовом, не мог  больше  использоваться.  В  результате  был
       добавлен  новый  системный  вызов  rt_sigpending()  с увеличенным типом sigset_t. У нового
       системного вызова появился второй  аргумент,  size_t  sigsetsize,  в  котором  указывается
       размер  (в байтах) набора сигналов set. Обёрточная функция glibc sigpending() скрывает это
       и вызывает rt_sigpending(), если он есть в ядре.

ДЕФЕКТЫ

       Up to and including glibc 2.2.1, there is a bug in the wrapper function  for  sigpending()
       which means that information about pending real-time signals is not correctly returned.

СМ. ТАКЖЕ

       kill(2), sigaction(2), signal(2), sigprocmask(2), sigsuspend(2), sigsetops(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>

       Этот  перевод  является  бесплатной  документацией;  прочитайте  Стандартную  общественную
       лицензию GNU версии 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ или более позднюю, чтобы
       узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

       Если  вы  обнаружите  ошибки  в  переводе этой страницы руководства, пожалуйста, отправьте
       электронное письмо на ⟨man-pages-ru-talks@lists.sourceforge.net⟩.