NOM
set_tid_address - Positionner un pointeur vers un identifiant de thread
(TID)
SYNOPSIS
#include <linux/unistd.h>
long set_tid_address(int *tidptr);
Le noyau conserve, pour chaque processus, deux valeurs nommées
set_child_tid et clear_child_tid qui sont nulles par défaut.
set_child_tid
Si un processus est démarré en utilisant clone(2) avec l’attribut
CLONE_CHILD_SETTID, set_child_tid est remplie avec child_tidptr, le
cinquième paramètre de cet appel système.
Lorsque set_child_tid est remplie, la toute première chose que le
nouveau processus fait est d’écrire son PID à cette adresse.
clear_child_tid
Si un processus est démarré en utilisant clone(2) avec l’attribut
CLONE_CHILD_CLEARTID, clear_child_tid est remplie avec child_tidptr, le
cinquième paramètre de cet appel système.
L’appel système set_tid_address() remplit la valeur clear_child_tid
pour le processus appelant à tidptr.
Lorsque clear_child_tid est remplie, que le processus finit et qu’il
avait de la mémoire partagée avec d’autres processus ou threads, 0 est
écrit à cette adresse et un appel à futex(child_tidptr, FUTEX_WAKE, 1,
NULL, NULL, 0); est réalisé (c’est-à-dire que l’un des processus
bloqués sur ce futex est réveillé). Les erreurs sont ignorées.
VALEUR RENVOYÉE
set_tid_address() renvoie toujours le PID du processus appelant.
ERREURS
set_tid_address() réussit toujours.
VERSIONS
Cet appel est présent depuis Linux 2.5.48. Les détails fournis ici sont
valides depuis Linux 2.5.49.
CONFORMITÉ
Cet appel système est spécifique à Linux.
VOIR AUSSI
clone(2), futex(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 Alain Portal
<aportal AT univ-montp2 DOT fr> entre 2004 et 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> ».