12.2.2. Использование sigset_t

12.2.2. Использование sigset_t

Большинство функций сигналов POSIX принимают набор сигналов в качестве одного из своих параметров (или части одного из параметров). Тип данных sigset_t служит для представления набора сигналов и определен в <signal.h>. POSIX определяет пять функций для манипулирования наборами сигналов.

#include <signal.h>

int sigemptyset(sigset_t *set);

int sigfillset(sigset_t *set);

int sigaddset(sigset_t *set, int signum);

int sigdelset(sigset_t *set, int signum);

int sigismember(const sigset_t *set, int signum);

int sigemptyset(sigset_t *set); Делает пустым набор сигналов, на который указывает set (никаких сигналов в set представлено не будет). int sigfillset(sigset_t *set); Включает все доступные сигналы в set. int sigaddset(sigset_t *set, int signum); Добавляет сигнал signum в набор set. int sigdelset(sigset_t *set, int signum); Удаляет сигнал signum из набора set. int sigismember(const sigset_t *set, int signum); Возвращает не 0, если сигнал signum содержится в set. В противном случае возвращает 0.

Единственной причиной возврата ошибки любой из этих функций может быть то, что параметр signum будет содержать неправильный номер сигнала. В этом случае возвращается EINVAL. Излишне говорить, что подобное никогда не должно случаться.