on_exit(3) Library Functions Manual on_exit(3) NOM on_exit - Programmer une fonction a appeler a la fin normale du programme BIBLIOTHEQUE Bibliotheque C standard (libc, -lc) SYNOPSIS #include int on_exit(void (*fonction)(int, void *), void *arg); Exigences de macros de test de fonctionnalites pour la glibc (consulter feature_test_macros(7)) : on_exit() : Depuis la glibc 2.19 : _DEFAULT_SOURCE glibc 2.19 et anterieures : _BSD_SOURCE || _SVID_SOURCE DESCRIPTION La fonction on_exit() enregistre la fonction a appeler a la fin normale du programme, soit par l'appel a exit(3), soit lors du retour de la fonction main() du programme. La fonction recoit le parametre d'etat transmis au dernier appel a exit(3) et le parametre arg transmis a on_exit(). La meme fonction peut etre enregistree plusieurs fois : elle sera appelee une fois pour chaque enregistrement. Lorsqu'un processus enfant est cree avec fork(2), il herite d'une copie des enregistrements de son parent. A la suite d'un appel reussi a l'une des fonctions exec(3), tous les enregistrements sont supprimes. VALEUR RENVOYEE La fonction on_exit() renvoie 0 si elle reussit ; sinon elle renvoie une valeur non nulle. ATTRIBUTS Pour une explication des termes utilises dans cette section, consulter attributes(7). +---------------------------------+--------------------------+---------+ |Interface | Attribut | Valeur | +---------------------------------+--------------------------+---------+ |on_exit() | Securite des threads | MT-Safe | +---------------------------------+--------------------------+---------+ STANDARDS Aucun. HISTORIQUE SunOS 4, glibc. Supprime dans Solaris (SunOS 5). Utiliser la fonction standard atexit(3) a la place. AVERTISSEMENTS Au moment ou fonction est executee, les variables de la pile (auto) peuvent deja etre hors de portee. Ainsi, arg ne doit pas etre un pointeur sur une variable de pile ; mais il peut par contre etre un pointeur sur une variable du tas ou une variable globale. VOIR AUSSI _exit(2), atexit(3), exit(3) TRADUCTION La traduction francaise de cette page de manuel a ete creee par Christophe Blaess , Stephan Rafin , Thierry Vignaud , Francois Micaux, Alain Portal , Jean-Philippe Guerard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas Francois , Florentin Duneau , Simon Paillard , Denis Barbier et David Prevot Cette traduction est une documentation libre ; veuillez vous reporter a la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITE LEGALE. Si vous decouvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message a . Pages du manuel de Linux 6.06 31 octobre 2023 on_exit(3)