NOM¶
bsd_signal - Gestion des signaux avec la sémantique BSD
SYNOPSIS¶
#define _XOPEN_SOURCE /* Consultez
feature_test_macros(7) */
#include <signal.h>
typedef void (*sighandler_t)(int);
sighandler_t bsd_signal(int signum, sighandler_t
handler );
DESCRIPTION¶
La fonction
bsd_signal() prend les mêmes paramètres et
effectue la même tâche que
signal(2).
La différence entre les deux est que
bsd_signal() garantit de
fournir une sémantique de signal fiable, qui est : a) le signal
n'est pas remis à sa valeur par défaut lorsque le gestionnaire
de signal est appelé ; b) les autres occurrences du signal sont
bloquées pendant l'exécution du gestionnaire ; c) si le
gestionnaire interrompt un appel système bloquant, alors l'appel
système est automatiquement redémarré. Une application
portable ne peut pas se baser sur
signal(2) pour fournir ces garanties.
VALEUR RENVOYÉE¶
La fonction
bsd_signal renvoie la valeur précédente du
gestionnaire de signal ou
SIG_ERR lors d'une erreur.
ERREURS¶
Comme pour
signal(2).
ATTRIBUTS¶
Multithreading (voir pthreads(7))¶
La fonction
bsd_signal() est sûre dans un contexte multithread.
BSD 4.2, POSIX.1-2001. POSIX.1-2008 supprime la spécification de
bsd_signal() et recommande à la place l'utilisation de
sigaction(2).
NOTES¶
L'utilisation de
bsd_signal() est à éviter, utilisez
sigaction(2) à la place.
Sur des systèmes Linux modernes,
bsd_signal() et
signal(2)
sont équivalents. Cependant, sur de vieux systèmes,
signal(2) fournit une sémantique de signal non fiable ;
consultez
signal(2) pour plus de détails.
Le type
sighandler_t est une extension GNU ; ce type n'est
défini que si la macro de test de fonctionnalités
_GNU_SOURCE est définie.
VOIR AUSSI¶
sigaction(2),
signal(2),
sysv_signal(3),
signal(7)
COLOPHON¶
Cette page fait partie de la publication 3.65 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/>.
Florentin Duneau 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> ».