Provided by: manpages-fr-dev_4.21.0-2_all bug

NOM

       _exit, _Exit - Mettre fin au processus appelant

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #include <unistd.h>

       [[noreturn]] void _exit(int status);

       #include <stdlib.h>

       [[noreturn]] void _Exit(int status);

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

       _Exit() :
           _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L

DESCRIPTION

       La  fonction  _exit()  met  fin  « immédiatement » au processus en cours, les descripteurs de fichier lui
       appartenant sont fermés, tous ses enfants éventuels sont récupérés par le processus init(1)  (ou  par  le
       processus   « subreaper »  le  plus  proche  comme  défini  à  l’aide  de  l'utilisation  de  l'opération
       PR_SET_CHILD_SUBREAPER de prctl(2)). Le processus parent reçoit un signal SIGCHLD.

       La valeur status & 0xFF est renvoyée au processus parent comme valeur de sortie et peut être récupérée en
       utilisant un appel système de la famille wait(2).

       La fonction _Exit() est équivalente à _exit().

VALEUR RENVOYÉE

       Ces fonctions ne renvoient rien.

STANDARDS

       POSIX.1-2001, POSIX.1-2008, SVr4, 4.3BSD. La fonction _Exit() est apparue dans C99.

NOTES

       Pour  une discussion sur les effets de exit, la transmission du code de retour, les processus zombie, les
       signaux envoyés, etc., reportez-vous à exit(3).

       L'appel système _exit() est identique à exit(3), mais n'appelle aucune fonction programmée par  atexit(3)
       ou  on_exit(3).  Les  flux stdio(3) ne sont pas vidés. D'un autre côté, _exit() ferme les descripteurs de
       fichier ouverts, ce qui peut retarder son exécution durant le temps où des sorties se  terminent.  Si  ce
       retard  est  gênant, on peut invoquer des fonctions telles que tcflush(3) avant d'appeler _exit(). Savoir
       si toutes les entrées-sorties en attente sont annulées, et lesquelles sont annulées  lors  d'un  _exit(),
       dépend de l'implémentation.

   Différences entre bibliothèque C et noyau
       Le  texte  de  la  DESCRIPTION  ci-dessus  décrit l'effet traditionnel de _exit(), qui est de terminer un
       processus et il s'agit de la sémantique spécifiée par la POSIX.1 et implémentée par la fonction enveloppe
       de la bibliothèque C. Sur des systèmes modernes, cela signifie la fin de tous les processus.

       Contrairement  à  la  fonction  enveloppe  de la bibliothèque C, l'appel système _exit() brut de Linux ne
       termine que le thread appelant et il ne réapparente un processus enfant ou n'envoie un signal SIGCHLD  au
       processus parent que s'il s'agit du dernier thread du groupe de threads.

       Jusqu'à  la  glibc 2.3,  la  fonction  enveloppe  _exit() appelait l'appel système de même nom. Depuis la
       glibc 2.3, la fonction enveloppe appelle exit_group(2), afin de terminer tous  les  processus  légers  du
       processus.

VOIR AUSSI

       execve(2),   exit_group(2),   fork(2),   kill(2),  wait(2),  wait4(2),  waitpid(2),  atexit(3),  exit(3),
       on_exit(3), termios(3)

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>,    David     Prévot
       <david@tilapin.org> et Jean-Philippe MENGUAL <jpmengual@debian.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⟩.