BEZEICHNUNG¶
sigpause - schaltet gezielt blockierte Signale frei und wartet auf einen
Interrupt
ÜBERSICHT¶
#include <signal.h>
int sigpause(int sigmask); /* BSD */
int sigpause(int sig); /* System V / UNIX 95 */
BESCHREIBUNG¶
Verwenden Sie diese nicht Funktion, sondern stattdessen
sigsuspend(2).
Die Funktion
sigpause() wurde entwickelt, um auf ein Signal warten. Sie
ändert die Signalmaske (den Satz blockierter Signale) des Prozesses und
wartet dann darauf, dass ein Signal eintrifft. Nach der Ankunft eines Signals
wird die ursprüngliche Signalmaske wiederhergestellt.
RÜCKGABEWERT¶
Wenn
sigpause() zurückkehrt, wurde sie durch ein Signal
unterbrochen. Der Rückgabewert ist -1; der Wert von
errno ist
EINTR.
Die System-V-Version von
sigpause() ist in POSIX.1-2001 standardisiert.
ANMERKUNGEN¶
Geschichte¶
Die klassische BSD-Version dieser Funktion erschien in 4.2BSD. Sie setzt die
Signalmaske des Prozesses auf
sigmask. UNIX 95 standardisierte die
inkompatible System-V-Version dieser Funktion, die nur das angegebene Signal
sig aus der Signalmaske des Prozesses entfernt. Die unglückliche
Situation mit zwei unvereinbaren Funktionen mit dem gleichen Namen wurde von
der Funktion
sigsuspend(2) gelöst. Ihr Argument hat den Typ
sigset_t * anstatt
int.
Linux-Anmerkungen¶
Unter Linux ist diese Routine nur auf der Sparc-Architektur (sparc64) ein
Systemaufruf.
Libc4 und Libc5 kennen nur die BSD-Version.
Glibc verwendet die BSD-Version, wenn das Feature-Test-Makro
_BSD_SOURCE
und keines der Makros
_POSIX_SOURCE,
_POSIX_C_SOURCE,
_XOPEN_SOURCE,
_GNU_SOURCE oder
_SVID_SOURCE definiert
ist. Anderenfalls verwendet sie die System-V-Version.
SIEHE AUCH¶
kill(2),
sigaction(2),
sigprocmask(2),
sigsuspend(2),
sigblock(3),
sigvec(3),
feature_test_macros(7)
KOLOPHON¶
Diese Seite ist Teil der Veröffentlichung 3.42 des Projekts Linux-
man-pages. Eine Beschreibung des Projekts und Informationen, wie Fehler
gemeldet werden können, finden sich unter
http://www.kernel.org/doc/man-pages/.
ÜBERSETZUNG¶
Die deutsche Übersetzung dieser Handbuchseite wurde von René Tschirley
<gremlin@cs.tu-berlin.de> und Martin Eberhard Schauer
<Martin.E.Schauer@gmx.de> 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 <debian-l10n-german@lists.debian.org>.