Provided by: manpages-fr-dev_4.13-4_all bug

NOM

       on_exit - Programmer une fonction à appeler à la fin normale du programme

SYNOPSIS

       #include <stdlib.h>

       int on_exit(void (*fonction)(int , void *), void *arg);

   Exigences de macros de test de fonctionnalités pour la glibc (consulter feature_test_macros(7)) :

       on_exit():
           Depuis la glibc 2.19 :
               _DEFAULT_SOURCE
           Pour la glibc 2.19 et avant :
               _BSD_SOURCE || _SVID_SOURCE

DESCRIPTION

       La  fonction on_exit() enregistre la fonction à appeler à la fin normale du programme, soit par l'appel à
       exit(3), soit lors du retour de la fonction main() du programme. La fonction reçoit le  paramètre  d'état
       transmis au dernier appel à exit(3) et le paramètre arg transmis à on_exit().

       La  même  fonction  peut  être  enregistrée  plusieurs  fois :  elle  sera  appelée  une fois pour chaque
       enregistrement.

       Lorsqu'un processus enfant est créé avec fork(2), il  hérite  d'une  copie  des  enregistrements  de  son
       parent.  À  la  suite  d'un  appel  réussi  à  l'une des fonctions exec(3), tous les enregistrements sont
       supprimés.

VALEUR RENVOYÉE

       La fonction on_exit() renvoie 0 si elle réussit ; sinon elle renvoie une valeur non nulle.

ATTRIBUTS

       Pour une explication des termes utilisés dans cette section, consulter attributes(7).
       ┌───────────┬──────────────────────┬─────────┐
       │ InterfaceAttributValeur  │
       ├───────────┼──────────────────────┼─────────┤
       │ on_exit() │ Sécurité des threads │ MT-Safe │
       └───────────┴──────────────────────┴─────────┘

CONFORMITÉ

       Cette fonction provient de SunOS 4 mais est également présente dans la glibc. Elle n'apparaît  plus  dans
       Solaris  (SunOS 5).  Les  programmes  portables ne devraient pas utiliser cette fonction et devraient lui
       préférer la fonction standard atexit(3).

NOTES

       Au moment où fonction est exécutée, les variables de la pile (auto) peuvent déjà  être  hors  de  portée.
       Ainsi,  arg  ne  doit  pas  être  un  pointeur sur une variable de pile ; mais il peut par contre être un
       pointeur sur une variable du tas ou une variable globale.

VOIR AUSSI

       _exit(2), atexit(3), exit(3)

COLOPHON

       Cette page fait partie de la publication 5.10 du projet man-pages Linux. Une description du projet et des
       instructions pour signaler des anomalies et la dernière version de cette page  peuvent  être  trouvées  à
       l'adresse https://www.kernel.org/doc/man-pages/.

TRADUCTION

       La   traduction   française   de   cette   page   de   manuel   a   été   créée   par  Christophe  Blaess
       <https://www.blaess.fr/christophe/>,   Stéphan   Rafin   <stephan.rafin@laposte.net>,   Thierry   Vignaud
       <tvignaud@mandriva.com>,  François  Micaux,  Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard
       <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)   <jean-luc.coulon@wanadoo.fr>,   Julien   Cristau
       <jcristau@debian.org>,      Thomas      Huriaux      <thomas.huriaux@gmail.com>,     Nicolas     François
       <nicolas.francois@centraliens.net>,    Florentin    Duneau    <fduneau@gmail.com>,     Simon     Paillard
       <simon.paillard@resel.enst-bretagne.fr>,    Denis    Barbier   <barbier@debian.org>   et   David   Prévot
       <david@tilapin.org>

       Cette traduction est une documentation libre ; veuillez vous  reporter  à  la  GNU General Public License
       version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si  vous  découvrez  un  bogue  dans la traduction de cette page de manuel, veuillez envoyer un message à
       debian-l10n-french@lists.debian.org.

GNU                                                2 août 2019                                        ON_EXIT(3)