.\" -*- coding: UTF-8 -*- '\" t .\" Copyright (c) 2008 Linux Foundation, written by Michael Kerrisk .\" .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH pthread_tryjoin_np 3 "20 juillet 2023" "Pages du manuel de Linux 6.05.01" .SH NOM pthread_tryjoin_np, pthread_timedjoin_np \- Essayer de fusionner avec un thread ayant terminé son exécution .SH BIBLIOTHÈQUE Bibliothèque de threads POSIX (\fIlibpthread\fP, \fI\-lpthread\fP) .SH SYNOPSIS .nf \fB#define _GNU_SOURCE\fP /* Consultez feature_test_macros(7) */ \fB#include \fP .PP \fBint pthread_tryjoin_np(pthread_t \fP\fIthread\fP\fB, void **\fP\fIretval\fP\fB);\fP \fBint pthread_timedjoin_np(pthread_t \fP\fIthread\fP\fB, void **\fP\fIretval\fP\fB,\fP \fB const struct timespec *\fP\fIabstime\fP\fB);\fP .fi .SH DESCRIPTION Ces fonctions opèrent de la même façon que \fBpthread_join\fP(3), à l'exception des différences décrites dans cette page. .PP La fonction \fBpthread_tryjoin_np\fP() essaie de fusionner avec le thread \fIthread\fP si cela est possible sans attendre et renvoie le code de retour du thread dans \fI*retval\fP. Si le \fIthread\fP ne s'est toujours pas terminé, alors au lieu d'être bloquée (comme le fait \fBpthread_join\fP(3)), l'appel renvoie une erreur. .PP La fonction \fBpthread_timedjoin_np\fP() essaie de fusionner avec un thread avec une limite de temps. Si le \fIthread\fP ne s'est toujours pas terminé, alors l'appel est bloqué pendant un temps maximum de \fIabstime\fP mesuré par rapport à l'horloge \fBCLOCK_REALTIME\fP. Si le délai expire avant que \fIthread\fP ne se termine, l'appel renvoie une erreur. Le paramètre \fIabstime\fP est une structure \fBtimespec\fP(3) qui indique un temps absolu mesuré depuis l'époque POSIX (consultez \fBtime\fP(2)) .SH "VALEUR RENVOYÉE" En cas de réussite, ces fonction renvoient 0\ ; en cas d'erreur, elles renvoient un numéro d'erreur. .SH ERREURS Ces fonction peuvent échouer avec les mêmes erreurs que \fBpthread_join\fP(3). \fBpthread_tryjoin_np\fP() peut de plus échouer avec l'erreur suivante\ : .TP \fBEBUSY\fP L'exécution du \fIthread\fP n'était pas terminée au moment de l'appel. .PP \fBpthread_timedjoin_np\fP() peut également échouer avec les erreurs suivantes\ : .TP \fBEINVAL\fP La valeur \fIabstime\fP n'est pas valable (\fItv_sec\fP est inférieure à \fB0\fP ou \fItv_nsec\fP est plus grande que 1e9). .TP \fBETIMEDOUT\fP Le délai a expiré avant que \fIthread\fP ne se soit terminé. .PP \fBpthread_timedjoin_np\fP() ne renvoie jamais d'erreur \fBEINTR\fP. .SH ATTRIBUTS Pour une explication des termes utilisés dans cette section, consulter \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. Interface Attribut Valeur T{ .na .nh \fBpthread_tryjoin_np\fP(), \fBpthread_timedjoin_np\fP() T} Sécurité des threads MT\-Safe .TE .sp 1 .SH STANDARDS GNU\ ; d'où le suffixe «\ _np\ » (non portable) dans leur nom. .SH HISTORIQUE glibc 2.3.3. .SH BOGUES La fonction \fBpthread_timedjoin_np\fP() mesure le temps en calculant en interne un intervalle de sommeil relatif qui est alors mesuré par rapport à l'horloge \fBCLOCK_MONOTONIC\fP plutôt que par rappport à l'horloge \fBCLOCK_REALTIME\fP. En conséquence, le délai n'est pas affecté par les modifications discontinues à l'horloge \fBCLOCK_REALTIME\fP. .SH EXEMPLES Le code suivant attend la fin d'exécution d'un thread pour fusionner pendant au plus 5 seconde\ : .PP .in +4n .EX struct timespec ts; int s; \& \&... \& if (clock_gettime(CLOCK_REALTIME, &ts) == \-1) { /* Handle error */ } \& ts.tv_sec += 5; \& s = pthread_timedjoin_np(thread, NULL, &ts); if (s != 0) { /* Handle error */ } .EE .in .SH "VOIR AUSSI" \fBclock_gettime\fP(2), \fBpthread_exit\fP(3), \fBpthread_join\fP(3), \fBtimespec\fP(3), \fBpthreads\fP(7) .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 , Frédéric Hantrais et Jean-Pierre Giraud . .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 .