Provided by: manpages-ru-dev_4.21.0-2_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
       или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

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

Linux man-pages 6.03                            4 декабря 2022 г.                                  sigpending(2)