pthread_join   Début   Suivant   Sommaire   Préc.page.lue   Accueil
Section: Manuel du programmeur Linux (3)
Updated: 11 mars 1998
Sommaire  



NOM   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
pthread_join - Attendre la fin d'un autre thread  



SYNOPSIS   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
#include <pthread.h>

int pthread_join(pthread_t th, void **thread_return);  




DESCRIPTION   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
pthread_join() suspend l'exécution du thread appelant jusqu'à ce que le thread identifié par th achève son exécution, soit en appelant pthread_exit(3) soit après avoir été annulé.

Si thread_return ne vaut pas NULL, la valeur renvoyée par th y sera enregistrée. Cette valeur sera soit l'argument passé à pthread_exit(3), soit PTHREAD_CANCELED si le thread th a été annulé.

Le thread rejoint th doit être dans l'état joignable : il ne doit pas avoir été détaché par pthread_detach(3) ou par l'attribut PTHREAD_CREATE_DETACHED lors de sa création par pthread_create(3).

Quand l'exécution d'un thread joignable s'achève, ses ressources mémoire (descripteur de thread et pile) ne sont pas désallouées jusqu'à ce qu'un autre thread le joigne en utilisant pthread_join(). Aussi, pthread_join() doit être appelée une fois pour chaque thread joignable pour éviter des fuites de mémoire.

Au plus un seul thread peut attendre la mort d'un thread donné. Appeler pthread_join() sur un thread th dont un autre thread attend déjà la fin renvoie une erreur.  




ANNULATION   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
pthread_join est un point d'annulation. Si un thread est annulé alors qu'il est suspendu dans pthread_join(), l'exécution du thread reprend immédiatement et l'annulation est réalisée sans attendre la fin du thread th. Si l'annulation intervient durant pthread_join(), le thread th demeure non joint.  



VALEUR RENVOYÉE   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
En cas de succès, le code renvoyé par th est enregistré à l'emplacement pointé par thread_return, et 0 est renvoyé. En cas d'erreur, un code d'erreur non nul est renvoyé.  



ERREURS   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
ESRCH
Aucun thread correspondant à th n'a pu être trouvé.
EINVAL
Le thread th a été détaché.
EINVAL
Un autre thread attend déjà la mort de th.
EDEADLK
L'argument th représente le thread appelant.
 



AUTEUR   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
Xavier Leroy <Xavier DOT Leroy AT inria DOT fr>  



VOIR AUSSI   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil
pthread_exit(3), pthread_detach(3), pthread_create(3), pthread_attr_setdetachstate(3), pthread_cleanup_push(3), pthread_key_create(3)  



TRADUCTION   Début   Précédent   Suivant   Sommaire   Préc.page.lue   Accueil

Ce document est une traduction réalisée par Thierry Vignaud <tvignaud AT mandriva DOT com> en 2000 et révisée le 19 novembre 2007.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 3 pthread_join ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.


 



Sommaire   Début   Suivant   Sommaire   Préc.page.lue   Accueil
NOM
SYNOPSIS
DESCRIPTION
ANNULATION
VALEUR RENVOYÉE
ERREURS
AUTEUR
VOIR AUSSI
TRADUCTION

Table des mots clés   Début   Suivant   Sommaire   Préc.page.lue   Accueil
EDEADLKERREURS
EINVALERREURS
ESRCHERREURS



Ce document a été créé par man2html suivi de man2html.pl, le 17/10/2008 17:51:04, en utilisant les pages de 'man'.
 

Valid HTML 4.01 Transitional