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  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩   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 ⟨⟩.