Общеизвестно, что если нужно сбросить переменную sigset_t
, то достаточно
sigemptyset(&my_ss);
Мне интересно, существует ли стандартный подход к инициализации * 1006? * такая переменная, чтобы получить его пустым (т. е. как если бы пользователь только что сбросил его с помощью показанного выше метода). Может быть, что-то вроде макроса из pthread API. Например,
static sigset_t trackedSignals = SIGSET_INITIALIZER;
В Linux системах, очевидно, достаточно использовать {0}
в качестве такого инициализатора, но будет ли он работать везде? Потому что, как я вижу, POSIX довольно скудно определяет этот тип:
sigset_t
[CX] Целочисленный или структурный тип объекта, используемый для представления наборов сигналы.
Таким образом, строго говоря, {0}
не нужно инициализировать этот объект семантически "пустым".