Provided by: manpages-fr-dev_3.57d1p1-1_all bug

NOM

       sigsuspend - Attendre un signal

SYNOPSIS

       #include <signal.h>

       int sigsuspend(const sigset_t *mask);

   Exigences    de    macros    de   test   de   fonctionnalités   pour   la   glibc   (consultez
   feature_test_macros(7)) :

       sigsuspend() : _POSIX_C_SOURCE >= 1 || _XOPEN_SOURCE || _POSIX_SOURCE

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).

       Consultez 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),
       sigwait(3), signal(7)

COLOPHON

       Cette page fait partie de la publication 3.57 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

       Depuis   2010,   cette   traduction   est   maintenue   à   l'aide   de    l'outil    po4a
       <http://po4a.alioth.debian.org/>  par l'équipe de traduction francophone au sein du projet
       perkamon <http://perkamon.alioth.debian.org/>.

       Christophe   Blaess   <http://www.blaess.fr/christophe/>   (1996-2003),    Alain    Portal
       <http://manpagesfr.free.fr/>  (2003-2006).  Julien  Cristau  et  l'équipe  francophone  de
       traduction de Debian (2006-2009).

       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> ».