ÜBERSICHT
#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);
Mit Glibc erforderliche Makros (siehe feature_test_macros(7)):
sigemptyset(), sigfillset(), sigaddset(), sigdelset(), sigismember():
- _POSIX_C_SOURCE
BESCHREIBUNG
Diese Funktionen ermöglichen die Manipulation von POSIX-Signalsätzen.sigemptyset() initialisiert den durch set gegebenen Signalsatz auf leer, wobei alle Signale vom Satz ausgeschlossen sind.
sigfillset() initialisiert set auf voll und nimmt alle Signale darin auf.
sigaddset() und sigdelset() fügen Signal signum zu set hinzu bzw. löschen es daraus.
sigismember() prüft, ob signum in set enthalten ist.
Objekte des Typs sigset_t müssen durch einen Aufruf von entweder sigemptyset() oder sigfillset() initialisiert werden, bevor sie an die Funktionen sigaddset(), sigdelset() und sigismember() oder die unten beschriebenen zusätzlichen Funktionen der glibc (sigisemptyset(), sigandset() und sigorset()) übergeben werden. Erfolgt keine Initialisierung, sind die Ergebnisse nicht definiert.
RÜCKGABEWERT
sigemptyset(), sigfullset(), sigaddset() und sigdelset() geben bei Erfolg 0 und im Fehlerfall -1 zurück.sigismember() gibt 1 zurück, wenn signum in set enthalten ist und 0, wenn das nicht der Fall ist. Treten Fehler auf, ist der Rückgabewert -1.
Im Fehlerfall setzen diese Funktionen errno, um die Ursache des Fehlers anzuzeigen.
FEHLER
- EINVAL
- sig ist kein gültiges Signal.
ATTRIBUTE
Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.Schnittstelle | Attribut | Wert |
sigemptyset(),
sigfillset(),
sigaddset(), sigdelset(), sigismember(), sigisemptyset(), sigorset(), sigandset() | Multithread-Fähigkeit | MT-Safe |
KONFORM ZU
POSIX.1-2001, POSIX.1-2008.ANMERKUNGEN
Wenn ein gefülltes Signalset erstellt wird, nimmt die Glibc-Funktion sigfillset() die beiden Echtzeit-Signale nicht mit auf, die intern von der NPTL-Threading-Implementation verwendet werden. Siehe nptl(7) für Details.Glibc-Erweiterungen
Ist das Feature-Test-Makro _GNU_SOURCE definiert, akiviert <signal.h> drei weitere Funktionen für die Behandlung von Signalsätzen:
int sigisemptyset(const sigset_t *set); int sigorset(sigset_t *dest, const sigset_t *left, const sigset_t *right); int sigandset(sigset_t *dest, const sigset_t *left, const sigset_t *right);
sigisemptyset() gibt 1 zurück, wenn set keine Signale enthält, sonst 0.
sigorset() übernimmt die zusammengefassten Sätze left und right in dest. sigandset() übernimmt die Schnittmenge der Mengen left und right in dest. Beide Funktionen geben bei Erfolg 0 und im Fehlerfall -1 zurück.
Diese Funktionen sind nicht standardisiert (ein paar andere System stellen ähnliche Funktionen bereit). Ihre Verwendung in portablen Programmen sollte vermieden werden.
KOLOPHON
Diese Seite ist Teil der Veröffentlichung 4.06 des Projekts Linux-man-pages. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter https://www.kernel.org/doc/man-pages/.
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Patrick Rother <[email protected]>, Martin Eberhard Schauer <[email protected]> und Dr. Tobias Quathamer <[email protected]> erstellt.Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an <[email protected]>.