dwww Home | Manual pages | Find package

_exit(2)                      System Calls Manual                     _exit(2)

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 en-
       fants éventuels sont récupérés par le processus init(1) (ou par le pro-
       cessus « subreaper » le plus proche comme défini à l’aide de l'utilisa-
       tion 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 appa-
       rue 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  fi-
       chier  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), wait-
       pid(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  Chris-
       tophe  Blaess  <https://www.blaess.fr/christophe/>, Stéphan Rafin <ste-
       phan.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.cou-
       lon@wanadoo.fr>,  Julien  Cristau <jcristau@debian.org>, Thomas Huriaux
       <thomas.huriaux@gmail.com>, Nicolas François  <nicolas.francois@centra-
       liens.net>,  Florentin  Duneau <fduneau@gmail.com>, Simon Paillard <si-
       mon.paillard@resel.enst-bretagne.fr>,   Denis   Barbier    <barbier@de-
       bian.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⟩.

Pages du manuel de Linux 6.03   22 janvier 2023                       _exit(2)

Generated by dwww version 1.15 on Sat Jun 29 01:47:43 CEST 2024.