Provided by: manpages-de-dev_4.13-4_all bug

BEZEICHNUNG

       sigpause - schaltet gezielt blockierte Signale frei und wartet auf einen Interrupt

ÜBERSICHT

       #include <signal.h>

       int sigpause(int sigmask);  /* BSD (siehe ANMERKUNGEN) */

       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.

ATTRIBUTE

       Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.
       ┌───────────────┬───────────────────────┬─────────┐
       │ SchnittstelleAttributWert    │
       ├───────────────┼───────────────────────┼─────────┤
       │ sigpause()    │ Multithread-Fähigkeit │ MT-Safe │
       └───────────────┴───────────────────────┴─────────┘

KONFORM ZU

       Die System-V-Version von sigpause() ist in POSIX.1-2001  standardisiert.  Er  ist  auch  in  POSIX.1-2008
       spezifiziert, dort aber als veraltet markiert.

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.

       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 und Feature-Test-Makros  müssen  wie  folgt  definiert  sein,  um  die
       Deklarationen zu erhalten:

       *  Seit Glibc 2.26: _XOPEN_SOURCE >= 500

       *  Glibc 2.25 und älter: _XOPEN_SOURCE

       Seit  Glibc  2.19  wird  nur  die  System-V-Version  von <signal.h> angezeigt. Zu Anwendungen, die früher
       sigpause() von BSD verwendet haben, sollte sigsuspend(2) hinzugefügt werden.

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  5.10  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 René Tschirley <gremlin@cs.tu-berlin.de>, Martin
       Eberhard Schauer <Martin.E.Schauer@gmx.de> und Mario Blättermann <mario.blaettermann@gmail.com> 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.

Linux                                          15. September 2017                                    SIGPAUSE(3)