Provided by: manpages-fr-dev_2.80.1-1_all bug

NOM

       sigsuspend - Attendre un signal

SYNOPSIS

       #include <signal.h>

       int sigsuspend(const sigset_t *mask);

DESCRIPTION

       L’appel  sigsuspend()  remplace  temporairement  le  masque  de signaux
       bloqués par celui fourni dans mask puis  endort  le  processus  jusqu’à
       arrivée  d’un signal qui déclenche un gestionnaire de signal ou termine
       le processus.

       Si le signal termine le  processus,  sigsuspend()  ne  retourne  pas  à
       l’appelant.  Si  le  signal est intercepté, sigsuspend() retourne après
       l’exécution du gestionnaire,  et  le  masque  de  signaux  bloqués  est
       restauré à sa valeur précédant l’appel à sigsuspend().

       Il  n’est  pas  possible  de bloquer SIGKILL ou SIGSTOP ; spécifier ces
       signaux dans  mask  n’a  aucun  effet  sur  le  masque  de  signaux  du
       processus.

VALEUR RENVOYÉE

       sigsuspend() renvoie toujours -1, et errno est normalement positionné à
       EINTR.

ERREURS

       EFAULT mask pointe en-dehors de l’espace d’adressage accessible.

       EINTR  L’appel a été interrompu par un signal.

CONFORMITÉ

       POSIX.1-2001.

NOTES

       En général, sigsuspend() est utilisé conjointement avec  sigprocmask(2)
       pour  empêcher  l’arrivée d’un signal pendant l’exécution d’une section
       de code critique. L’appelant commence  par  bloquer  les  signaux  avec
       sigprocmask(2).  Après la fin de la section critique, l’appelant attend
       les signaux avec  sigsuspend()  utilisé  avec  le  masque  renvoyé  par
       sigprocmask(2) (dans l’argument oldset).

       Voir sigsetops(3) pour les détails concernant les ensembles de signaux.

VOIR AUSSI

       kill(2),    pause(2),    sigaction(2),    signal(2),    sigprocmask(2),
       sigwaitinfo(2), sigsetops(3), signal(7)

COLOPHON

       Cette  page  fait  partie  de  la  publication 2.80 du projet man-pages
       Linux. Une description du projet et des instructions pour signaler  des
       anomalies       peuvent       être       trouvées      à      l’adresse
       http://www.kernel.org/doc/man-pages/.

TRADUCTION

       Cette page de manuel a été traduite  et  mise  à  jour  par  Christophe
       Blaess  <http://www.blaess.fr/christophe/> entre 1996 et 2003, puis par
       Alain Portal <aportal AT univ-montp2 DOT fr> jusqu’en 2006, et  mise  à
       disposition sur http://manpagesfr.free.fr/.

       Les mises à jour et corrections de la version présente dans Debian sont
       directement gérées par Julien Cristau <jcristau@debian.org> et l’équipe
       francophone de traduction de Debian.

       Veuillez   signaler   toute   erreur   de   traduction  en  écrivant  à
       <debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
       paquet manpages-fr.

       Vous  pouvez  toujours avoir accès à la version anglaise de ce document
       en utilisant la commande « man -L C <section> <page_de_man> ».