Provided by: manpages-de-dev_4.21.0-2_all bug

BEZEICHNUNG

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

BIBLIOTHEK

       Standard-C-Bibliothek (libc, -lc)

Ü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 │
       └───────────────────────────────────────────────────────┴───────────────────────┴─────────┘

STANDARDS

       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)

Ü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 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ 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 ⟨debian-l10n-german@lists.debian.org⟩.