gettid - Obtenir l'identifiant de thread
Bibliothèque C standard (
libc,
-lc)
#define _GNU_SOURCE
#include <unistd.h>
pid_t gettid(void);
gettid() renvoie l'identifiant de thread (TID) du processus appelant.
Dans un processus avec un seul thread, l'identifiant de thread est égal
à l'identifiant du processus (le PID tel que renvoyé par
getpid(2)). Dans un processus multithreadé, tous les processus
ont le même PID mais chacun a un TID unique. Pour plus de
détails, consultez la discussion sur
CLONE_THREAD dans
clone(2).
En cas de succès, l'identifiant de thread du thread appelant est
renvoyé.
Cette fonction réussit toujours.
L'appel système
gettid() est apparu pour la première fois
dans Linux 2.4.11. La prise en charge de la bibliothèque a
été ajoutée dans la glibc 2.30 (les versions
antérieures de la glibc ne fournissaient pas d'enveloppe pour cet appel
système, obligeant à utiliser
syscall(2)).
gettid() est spécifique à Linux et ne doit pas être
employé dans un programme conçu pour être portable.
Le TID renvoyé par cet appel n'est pas la même chose que
l'identifiant de thread POSIX (c'est-à-dire, la valeur opaque
renvoyée par
pthread_self(3)).
Dans un nouveau groupe de threads créé par un appel
clone(2) n'indiquant pas l'attribut
CLONE_THREAD (ou, de la
même manière, dans un nouveau processus créé par
fork(2)), le nouveau processus est le meneur d'un groupe de threads et
son identifiant de groupe de threads (valeur renvoyée par
getpid(2)) est la même que son identifiant de thread (valeur
renvoyée par
gettid()).
capget(2),
clone(2),
fcntl(2),
fork(2),
get_robust_list(2),
getpid(2),
ioprio_set(2),
perf_event_open(2),
sched_setaffinity(2),
sched_setparam(2),
sched_setscheduler(2),
tgkill(2),
timer_create(2)
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
Jean-Philippe MENGUAL <
[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]