Provided by: manpages-fr-extra_20140201_all bug

NOM

       pthread_atfork - Enregistrer des gestionnaires à invoquer lors de l'appel à fork(2)

SYNOPSIS

       #include <pthread.h>

       int pthread_atfork(void (*prepare)(void), void (*parent)(void), void (*child)(void));

DESCRIPTION

       pthread_atfork() enregistre les fonctions à appeler juste avant et juste après la création
       d'un nouveau processus par fork(2). Le gestionnaire prepare est appelé  par  le  processus
       parent juste avant la création du nouveau processus. Le gestionnaire parent est appelé par
       le processus parent juste avant que fork(2) finisse. Le gestionnaire child est appelé  par
       le processus fils juste avant la fin de l'appel fork(2).

       Un ou plusieurs des trois gestionnaires prepare, parent et child peut être affecté à NULL,
       ce qui signifie qu'aucun gestionnaire ne sera appelé au moment correspondant.

       pthread_atfork peut être appelée plusieurs fois pour enregistrer  plusieurs  ensembles  de
       gestionnaires.  Lors  de  l'appel  à  fork(2), les gestionnaires prepare sont appelés dans
       l'ordre LIFO (dernier ajouté avec pthread_atfork, premier appelé avant  fork),  alors  que
       les  gestionnaires parent et child sont appelés dans l'ordre FIFO (premier ajouté, premier
       appelé).

       Pour comprendre l'objectif de pthread_atfork(), rappelons que fork(2) copie toute  l'image
       mémoire  du  processus,  y  compris  ses  mutex  dans  leur  état de blocage courant, mais
       seulement le thread appelant : les autres threads ne s'exécutent  pas  dans  le  processus
       fils.  Les  mutex ne sont pas utilisables après le fork() et doivent être initialisés avec
       pthread_mutex_init() dans le processus fils.  C'est  une  limitation  de  l'implémentation
       actuelle et peut être ou non présente dans les prochaines versions.

VALEUR RENVOYÉE

       pthread_atfork() retourne 0 en cas de succès et un code d'erreur non nul en cas d'erreur.

ERREURS

       ENOMEM Pas assez de mémoire disponible pour enregistrer les gestionnaires.

AUTEUR

       Xavier Leroy <Xavier.Leroy@inria.fr>

VOIR AUSSI

       fork(2), pthread_mutex_lock(3), pthread_mutex_unlock(3).

TRADUCTION

       Cette  page de manuel a été traduite par Thierry Vignaud <tvignaud AT mandriva DOT com> en
       2000 et révisée par Alain Portal <aportal AT univ-montp2  DOT  fr>  en  2006.  La  version
       présente  dans  Debian  est  maintenue  par les membres de la liste <debian-l10n-french AT
       lists DOT debian DOT org>. Veuillez signaler toute erreur de traduction par un rapport  de
       bogue sur le paquet manpages-fr-extra.

                                           LinuxThreads                         PTHREAD_ATFORK(3)