Provided by:
manpages-fr-dev_3.32d0.2p4-1_all 
NOM
exit - Terminer normalement un processus
SYNOPSIS
#include <stdlib.h>
void exit(int status);
DESCRIPTION
La fonction exit() termine normalement un processus et la valeur status
& 0377 est envoyee au processus parent (consultez wait(2)).
Toutes les fonctions enregistrees avec atexit(3) et on_exit(3) sont
appelees dans l'ordre inverse de leur enregistrement. Il est possible
pour l'une de ces fonctions d'utiliser atexit(3) ou on_exit(3) pour
enregistrer une fonction supplementaire a executer lors de la procedure
de terminaison ; le nouvel enregistrement est ajoute au debut de la
liste des fonctions a appeler. Si l'une de ces fonctions ne rend pas la
main (par exemple, car elle appelle _exit(2) ou se tue avec un signal),
alors aucune des fonctions suivantes de la liste n'est executee et le
processus de terminaison est abandonne (en particulier, le vidage des
flux stdio(3)). Si une fonction a ete enregistree plusieurs fois avec
atexit(3) ou on_exit(3), alors elle sera appelee aussi souvent qu'elle
a ete enregistree.
Tous les flux ouverts du type stdio(3) sont vides et fermes. Les
fichiers crees par tmpfile(3) sont supprimes.
Le standard C specifie deux constantes symboliques EXIT_SUCCESS et
EXIT_FAILURE qui peuvent etre passees a exit() pour indiquer
respectivement une terminaison sans ou avec echec.
VALEUR RENVOY'EE
La fonction exit() ne revient jamais.
CONFORMIT'E
SVr4, BSD 4.3, POSIX.1-2001, C89, C99
NOTES
Le resultat est indefini si l'une des fonctions enregistrees avec
atexit(3) et on_exit(3) appelle exit() ou longjmp(3).
L'utilisation d'EXIT_SUCCESS et EXIT_FAILURE est legerement plus
portable (vers des environnements non UNIX) que celle de zero et d'une
valeur non nulle comme 1 ou -1. En particulier, le systeme VMS utilise
une convention differente.
BSD a tente de standardiser les codes de sortie, consultez le fichier
<sysexits.h>.
Apres exit(), le code de retour doit etre transmis au processus parent.
Il y a trois cas. Si le parent a defini SA_NOCLDWAIT ou s'il a defini
le comportement de SIGCHLD a SIG_IGN, le code de retour est ignore. Si
le pere etait en attente de la fin de son fils, il recoit le code de
retour. Dans ces deux cas, le fils meurt immediatement. Si le parent
n'est pas en attente, mais n'a pas indique qu'il desire ignorer le code
de retour, le processus fils devient un processus << zombie >> (ce
n'est rien d'autre qu'une coquille enveloppant le code de retour d'un
octet), que le processus pere pourra consultez ulterieurement grace a
l'une des fonctions wait(2).
Si l'implementation supporte le signal SIGCHLD, celui-ci est envoye au
processus pere. Si le pere a defini SA_NOCLDWAIT, il n'est pas precise
si SIGCHLD est envoye ou non.
Si le processus est un leader de session, et si son terminal de
controle est le terminal de la session, alors chaque processus du
groupe de processus en avant plan de ce terminal recoit un signal
SIGHUP, et le terminal est dissocie de cette session, lui permettant
d'etre acquis par un nouveau processus de controle.
Si la fin du processus rend orphelin un groupe de processus, et si
certains membres de ce groupe nouvellement orphelin sont arretes, alors
tous les processus de ce groupe vont recevoir SIGHUP suivi de SIGCONT.
Consultez setpgid(2) pour plus d'informations sur les processus
orphelins.
VOIR AUSSI
_exit(2), setpgid(2), wait(2), atexit(3), on_exit(3), tmpfile(3)
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 etre trouvees a l'adresse
<URL:http://www.kernel.org/doc/man-pages/>.
TRADUCTION
Depuis 2010, cette traduction est maintenue a l'aide de l'outil po4a
<URL:http://po4a.alioth.debian.org/> par l'equipe de traduction
francophone au sein du projet perkamon
<URL:http://perkamon.alioth.debian.org/>.
Christophe Blaess <URL:http://www.blaess.fr/christophe/> (1996-2003),
Alain Portal <URL:http://manpagesfr.free.fr/> (2003-2006). Florentin
Duneau et l'equipe francophone de traduction de Debian (2006-2009).
Veuillez signaler toute erreur de traduction en ecrivant a
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet manpages-fr.
Vous pouvez toujours avoir acces a la version anglaise de ce document
en utilisant la commande << man -L C <section> <page_de_man> >>.