Provided by: manpages-fr-dev_3.32d0.2p4-1_all bug

NOM

       pthread_join - Joindre un thread terminé

SYNOPSIS

       #include <pthread.h>

       int pthread_join(pthread_t thread, void **retval);

       Compilez et effectuez l'édition des liens avec l'option -pthread.

DESCRIPTION

       La  fonction  pthread_join()   attend  que le thread spécifié par thread se termine. Si ce
       thread s'est déjà terminé, pthread_join() revient tout de suite. Le  thread  spécifié  par
       thread doit être joignable.

       Si  retval  n'est  pas  NULL,  pthread_join()  copie  la  valeur de sortie du thread cible
       (c'est-à-dire  la  valeur  que  le  thread  cible  a  fournie  à  pthread_exit(3))    dans
       l'emplacement  pointé  par  *retval.  Si  le thread cible est annulé, PTHREAD_CANCELED est
       placé dans *retval.

       Si plusieurs threads essaient simultanément de joindre le même  thread,  le  résultat  est
       indéfini.  Si  le  thread  appelant  pthread_join()   est  annulé,  le  thread cible reste
       joignable (c'est-à-dire qu'il ne sera pas détaché).

VALEUR RENVOYÉE

       En cas de réussite, pthread_join() renvoie 0 ; en cas d'erreur,  elle  renvoie  un  numéro
       d'erreur.

ERREURS

       EDEADLK
              Un  verrou perpétuel (deadlock) a été détecté, par exemple deux threads essaient de
              se joindre mutuellement ; ou bien thread est aussi le thread appelant.

       EINVAL thread n'est pas un thread joignable.

       EINVAL Un autre thread attend déjà de joindre ce thread.

       ESRCH  Aucun thread avec pour identifiant thread n'a pu être trouvé.

CONFORMITÉ

       POSIX.1-2001.

NOTES

       Après un appel réussi à pthread_join(), l'appelant est  sûr  que  le  thread  cible  s'est
       terminé.

       Joindre un thread qui avait préalablement été joint résulte en un comportement indéfini.

       Un  échec  à  joindre  un  thread  qui est joignable (c'est-à-dire non détaché) produit un
       « thread zombie ». Il faut l'éviter, car chaque thread zombie consomme des  ressources  du
       système,  et si trop de threads zombies s'accumulent, il ne sera plus possible de créer de
       nouveaux threads (ou de nouveaux processus).

       Il n'existe pas d'analogue pthreads à waitpid(-1, &status, 0) pour joindre tout thread non
       terminé.  Si  vous  pensez  avoir  besoin de cette fonctionnalité, vous devez probablement
       repenser la conception de votre application.

       Tous les threads dans un processus sont au même niveau : tout  thread  peut  joindre  tout
       autre thread du processus.

EXEMPLE

       Consultez pthread_create(3).

VOIR AUSSI

       pthread_cancel(3),       pthread_create(3),       pthread_detach(3),      pthread_exit(3),
       pthread_tryjoin_np(3), pthreads(7)

COLOPHON

       Cette page fait partie de la publication 3.32 du projet man-pages Linux.  Une  description
       du  projet  et  des  instructions  pour  signaler  des  anomalies  peuvent être trouvées à
       l'adresse <URL:http://www.kernel.org/doc/man-pages/>.

TRADUCTION

       Depuis   2010,   cette   traduction   est   maintenue   à   l'aide   de    l'outil    po4a
       <URL:http://po4a.alioth.debian.org/>  par  l'équipe  de  traduction francophone au sein du
       projet perkamon <URL:http://perkamon.alioth.debian.org/>.

       Denis Barbier (2010).

       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> ».