NOM

pthread_kill - Envoyer un signal à un thread

BIBLIOTHÈQUE

Bibliothèque de threads POSIX ( libpthread, -lpthread)

SYNOPSIS

#include <signal.h>
int pthread_kill(pthread_t thread, int sig);
Exigences de macros de test de fonctionnalités pour la glibc (consulter feature_test_macros(7)) :
pthread_kill() :
    _POSIX_C_SOURCE >= 199506L || _XOPEN_SOURCE >= 500

DESCRIPTION

La fonction pthread_kill() envoie le signal sig à thread, un thread du même processus que l'appelant. Le signal est dirigé de manière asynchrone vers thread.
Si sig est 0, aucun signal n'est envoyé, mais la détection d'erreur est quand même effectuée.

VALEUR RENVOYÉE

En cas de réussite, pthread_kill() renvoie 0 ; en cas d'erreur, elle renvoie un numéro d'erreur, et aucun signal n'est envoyé.

ERREURS

EINVAL
Un signal invalide a été spécifié.

ATTRIBUTS

Pour une explication des termes utilisés dans cette section, consulter attributes(7).
Interface Attribut Valeur
pthread_kill() Sécurité des threads MT-Safe
 

STANDARDS

POSIX.1-2001, POSIX.1-2008.

NOTES

Les dispositions d'un signal sont définies au niveau du processus. Si un gestionnaire de signal est installé, le gestionnaire sera invoqué dans le thread thread, mais si la disposition du signal est « stop », « continue » ou « terminate », cette action affectera le processus entier.
L'implémentation par la glibc de pthread_kill() donne une erreur ( EINVAL) lors de tentatives d'envoyer un des signaux en temps réel utilisés en interne par l'implémentation du threading NPTL. Conulstez nptl(7) pour des détails.
La norme POSIX.1-2008 recommande que lorsqu'une implémentation détecte l'utilisation de l'identifiant d'un thread qui n'est plus en vie, l'appel pthread_kill() renvoie le message d'erreur ESRCH. L'implémentation de glibc renvoie cette erreur dans les cas où un identifiant de thread non valide est détecté. Il est à noter que POSIX précise également que l'utilisation d'un identifiant de thread dont l'exécution est terminée produit des effets indéfinis, et que l'utilisation d'un identifiant de thread invalide dans l'appel à pthread_kill() peut, par exemple, provoquer une erreur de segmentation (segmentation fault).

VOIR AUSSI

kill(2), sigaction(2), sigpending(2), pthread_self(3), pthread_sigmask(3), raise(3), pthreads(7), signal(7)

TRADUCTION

La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <[email protected]>, Thierry Vignaud <[email protected]>, François Micaux, Alain Portal <[email protected]>, Jean-Philippe Guérard <[email protected]>, Jean-Luc Coulon (f5ibh) <[email protected]>, Julien Cristau <[email protected]>, Thomas Huriaux <[email protected]>, Nicolas François <[email protected]>, Florentin Duneau <[email protected]>, Simon Paillard <[email protected]>, Denis Barbier <[email protected]>, David Prévot <[email protected]> et Frédéric Hantrais <[email protected]>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à [email protected]