Scroll to navigation

PTHREAD_SIGQUEUE(3) Manuel du programmeur Linux PTHREAD_SIGQUEUE(3)

NOM

pthread_sigqueue - Enregistrer un signal et des données pour un thread

SYNOPSIS

#include <signal.h>
#include <pthread.h>
int pthread_sigqueue(pthread_t thread, int sig,
                     const union sigval value);

Compiler et éditer les liens avec -pthreads.


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

pthread_sigqueue() : _GNU_SOURCE

DESCRIPTION

La fonction pthread_exit() effectue une tâche semblable à sigqueue(3), mais, au lieu d'envoyer un signal à un processus, elle envoie le signal à un thread du même processus que le thread appelant.

Le paramètre thread est l'identifiant d'un thread du même processus que l'appelant. Le paramètre sig indique le signal à envoyer. Le paramètre value indique les données à envoyer avec le signal ; consultez sigqueue(3) pour plus de détails.

VALEUR RENVOYÉE

En cas de réussite, pthread_sigqueue() renvoie 0 ; en cas d'erreur, elle renvoie un numéro d'erreur.

ERREURS

EAGAIN
La limite du nombre de signaux en file a été atteinte (consultez signal(7) pour plus d'informations).
EINVAL
sig est invalide.
ENOSYS
pthread_sigqueue() n'est pas pris en charge par ce système.
ESRCH
thread n'est pas valide.

VERSIONS

La fonction pthread_sigqueue() a été introduite dans la glibc dans sa version 2.11.

ATTRIBUTS

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

CONFORMITÉ

Cette fonction est une extension GNU.

NOTES

The glibc implementation of pthread_sigqueue() gives an error (EINVAL) on attempts to send either of the real-time signals used internally by the NPTL threading implementation. See nptl(7) for details.

VOIR AUSSI

rt_tgsigqueueinfo(2), sigaction(2), pthread_sigmask(3), sigqueue(3), sigwait(3), pthreads(7), signal(7)

COLOPHON

Cette page fait partie de la publication 5.07 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies et la dernière version de cette page, peuvent être trouvées à l'adresse https://www.kernel.org/doc/man-pages/.

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 <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org>, David Prévot <david@tilapin.org> et Frédéric Hantrais <fhantrais@gmail.com>

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 à <debian-l10n-french@lists.debian.org>.

15 septembre 2017 Linux