Provided by: manpages-dev_3.54-1ubuntu1_all bug


       _exit, _Exit - terminate the calling process


       #include <unistd.h>

       void _exit(int status);

       #include <stdlib.h>

       void _Exit(int status);

   Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

           _XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L;
           or cc -std=c99


       The  function  _exit()  terminates  the  calling  process  "immediately".   Any  open file
       descriptors belonging to the process are closed; any children of the process are inherited
       by process 1, init, and the process's parent is sent a SIGCHLD signal.

       The  value  status is returned to the parent process as the process's exit status, and can
       be collected using one of the wait(2) family of calls.

       The function _Exit() is equivalent to _exit().


       These functions do not return.


       SVr4, POSIX.1-2001, 4.3BSD.  The function _Exit() was introduced by C99.


       For a discussion on the effects of an  exit,  the  transmission  of  exit  status,  zombie
       processes, signals sent, and so on, see exit(3).

       The  function  _exit()  is  like  exit(3), but does not call any functions registered with
       atexit(3) or on_exit(3).  Whether it flushes standard I/O buffers  and  removes  temporary
       files  created  with  tmpfile(3)  is implementation-dependent.  On the other hand, _exit()
       does close open file descriptors, and this may cause an unknown delay, waiting for pending
       output  to  finish.   If  the  delay is undesired, it may be useful to call functions like
       tcflush(3) before calling _exit().  Whether any pending I/O is canceled, and which pending
       I/O may be canceled upon _exit(), is implementation-dependent.

       In glibc up to version 2.3, the _exit() wrapper function invoked the kernel system call of
       the same name.  Since glibc 2.3, the wrapper function invokes exit_group(2), in  order  to
       terminate all of the threads in a process.


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


       This page is part of release 3.54 of the Linux man-pages project.  A  description  of  the
       project,     and    information    about    reporting    bugs,    can    be    found    at