.\" -*- coding: UTF-8 -*- .\" Copyright (C) 2004 Andries Brouwer (aeb@cwi.nl) .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH set_tid_address 2 "30 octobre 2022" "Pages du manuel de Linux 6.03" .SH NOM set_tid_address \- Positionner un pointeur vers un identifiant de thread (TID) .SH BIBLIOTHÈQUE Bibliothèque C standard (\fIlibc\fP, \fI\-lc\fP) .SH SYNOPSIS .nf \fB#include \fP /* Définition des constantes \fBSYS_*\fP */ \fB#include \fP .PP \fBpid_t syscall(SYS_set_tid_address, int *\fP\fItidptr\fP\fB);\fP .fi .PP \fINote\fP\ : la glibc ne founit pas d'enveloppe pour \fBset_tid_address\fP(), nécessitant l'utilisation de \fBsyscall\fP(2). .SH DESCRIPTION Pour chaque thread, Le noyau maintient deux attributs (adresses) nommés \fIset_child_tid\fP et \fIclear_child_tid\fP. Ces deux attributs contiennent la valeur NULL par défaut. .TP \fIset_child_tid\fP Si un thread est démarré en utilisant \fBclone\fP(2) avec l'attribut \fBCLONE_CHILD_SETTID\fP, \fIset_child_tid\fP est définie à la valeur passée à l'argument \fIctid\fP de cet appel système. .IP Lorsque \fIset_child_tid\fP est remplie, la toute première chose que le nouveau thread fait est d'écrire son ID de thread à cette adresse. .TP \fIclear_child_tid\fP Si un thread est démarré en utilisant \fBclone\fP(2) avec l'attribut \fBCLONE_CHILD_CLEARTID\fP, \fIclear_child_tid\fP est définie à la valeur passée à l'argument \fIctid\fP de cet appel système. .PP L'appel système \fBset_tid_address\fP() remplit la valeur \fIclear_child_tid\fP pour le thread appelant à \fItidptr\fP. .PP Lorsqu'un thread dont \fIclear_child_tid\fP n'est pas NULL se termine, alors, si le thread partage de la mémoire avec d'autres threads, 0 est écrit à l'adresse indiquée dans \fIclear_child_tid\fP et le noyau réalise l'opération suivante\ : .PP .in +4n .EX futex(clear_child_tid, FUTEX_WAKE, 1, NULL, NULL, 0); .EE .in .PP L'effet de cette opération est de réveiller un simple thread qui réalise une attente futex à l'emplacement de la mémoire. Les erreurs de l'opération de réveil du futex sont ignorées. .SH "VALEUR RENVOYÉE" \fBset_tid_address\fP() renvoie toujours l'identifiant du thread appelant. .SH ERREURS \fBset_tid_address\fP() réussit toujours. .SH VERSIONS Cet appel est présent depuis Linux 2.5.48. Les détails fournis ici sont valides depuis Linux 2.5.49. .SH STANDARDS Cet appel système est spécifique à Linux. .SH "VOIR AUSSI" \fBclone\fP(2), \fBfutex\fP(2), \fBgettid\fP(2) .PP .SH TRADUCTION La traduction française de cette page de manuel a été créée par Christophe Blaess , Stéphan Rafin , Thierry Vignaud , François Micaux, Alain Portal , Jean-Philippe Guérard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas François , Florentin Duneau , Simon Paillard , Denis Barbier , David Prévot et Jean-Philippe MENGUAL . .PP Cette traduction est une documentation libre ; veuillez vous reporter à la .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License version 3 .UE concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE. .PP Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à .MT debian-l10n-french@lists.debian.org .ME .