NOM
tkill, tgkill - Envoyer un signal à un thread.
SYNOPSIS
int tkill(int tid, int sig);
int tgkill(int tgid, int tid, int sig);
tgkill() envoie le signal sig au thread qui a pour identifiant tid dans
le groupe tgid. (Contrairement à kill(2) qui ne peut être utilisé que
pour envoyer un signal à un processus (c’est-à-dire un groupe de
thread) ; le signal étant envoyé à n’importe quel thread du processus)
tkill() est l’ancienne version de tgkill() et est obsolète. Il ne
permet que de préciser l’identifiant du thread cible, qui peut résulter
en un envoi du signal au mauvais thread si le thread se termine et que
son identifiant est ré-utilisé. Évitez d’utiliser cet appel système.
Si tgid vaut -1, tgkill() est équivalent à tkill().
Ce sont des appels système bruts, conçus pour une utilisation dans la
bibliothèque des threads.
VALEUR RENVOYÉE
En cas de réussite, zéro est renvoyé, sinon -1 est renvoyé et errno
contient le code d’erreur.
ERREURS
EINVAL L’identifiant de thread ou l’identifiant de groupe de thread ou
le numéro de signal n’est pas valable.
EPERM Permission refusée. Pour les permissions nécessaires, voir
kill(2).
ESRCH Il n’y a pas de processus avec le TID (et TGID) indiqué.
VERSIONS
tkill() est supporté depuis Linux 2.4.19/2.5.4. tgkill() a été ajouté
dans Linux 2.5.75.
CONFORMITÉ
tkill() et tgkill() sont spécifiques à Linux et ne doivent pas être
utilisés dans un programme conçu pour être portable.
NOTES
Voir la description de CLONE_THREAD dans clone(2) pour une explication
sur les groupes de threads.
La glibc ne fournit pas de fonction autour de ces appels systène ;
utilisez syscall(2) pour les appeler.
VOIR AUSSI
clone(2), gettid(2), kill(2)
COLOPHON
Cette page fait partie de la publication 3.23 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> ».