.\" -*- 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 mars 2023" "Pages du manuel de Linux 6.05.01" .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 STANDARDS Linux. .SH HISTORIQUE Linux\ 2.5.48. .PP Les détails fournis ici sont valables depuis Linux\ 2.5.49. .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 .