sigemptyset, sigfillset, sigaddset, sigdelset, sigismember - POSIX-Operationen
für Signalsätze
Standard-C-Bibliothek (
libc,
-lc)
#include <signal.h>
int sigemptyset(sigset_t *Satz);
int sigfillset(sigset_t *Satz);
int sigaddset(sigset_t *Satz, int signum);
int sigdelset(sigset_t *Satz, int signum);
int sigismember(const sigset_t *Satz, int signum);
sigemptyset(),
sigfillset(),
sigaddset(),
sigdelset(),
sigismember():
_POSIX_C_SOURCE
Diese Funktionen ermöglichen die Manipulation von
POSIX-Signalsätzen.
sigemptyset() initialisiert den durch
Satz gegebenen Signalsatz
auf leer, wobei alle Signale vom Satz ausgeschlossen sind.
sigfillset() initialisiert
Satz auf voll und nimmt alle Signale
darin auf.
sigaddset() und
sigdelset() fügen Signal
signum zu
Satz hinzu bzw. löschen es daraus.
sigismember() prüft, ob
signum in
Satz 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.
sigemptyset(),
sigfullset(),
sigaddset() und
sigdelset() geben bei Erfolg 0 und im Fehlerfall -1 zurück.
sigismember() gibt 1 zurück, wenn
signum in
Satz
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 den Fehler anzuzeigen.
- EINVAL
-
signum ist kein gültiges Signal.
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 |
POSIX.1-2001, POSIX.1-2008.
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.
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 *Satz);
int sigorset(sigset_t *Ziel, const sigset_t *links,
const sigset_t *rechts);
int sigandset(sigset_t *Ziel, const sigset_t *links,
const sigset_t *rechts);
sigisemptyset() gibt 1 zurück, wenn
Satz keine Signale
enthält, sonst 0.
sigorset() übernimmt die zusammengefassten Sätze
links und
rechts in
Ziel.
sigandset()
übernimmt die Schnittmenge der Mengen
links und
rechts in
Ziel. 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.
sigaction(2),
sigpending(2),
sigprocmask(2),
sigsuspend(2)
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 die
Mailingliste
der Übersetzer