_exit(2) System Calls Manual _exit(2) NOMBRE _exit, _Exit - Provoca la finalizacion del proceso actual BIBLIOTECA Biblioteca Estandar C (libc, -lc) SINOPSIS #include [[noreturn]] void _exit(int estado); #include [[noreturn]] void _Exit(int estado); Requisitos de Macros de Prueba de Caracteristicas para glibc (vease feature_test_macros(7)): _Exit(): _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L DESCRIPCION _exit() finaliza el proceso de llamada inmediatamente. Se cerrara cualquier descriptor de archivo abierto perteneciente al proceso. Los hijos del proceso son heredados por init(1) (o por el proceso <> mas proximo, definido mediante la operacion PR_SET_CHILD_SUBREAPER de prctl(2)). El padre del proceso recibira una senal SIGCHLD. Se retorna al proceso padre el valor status & 0xFF como estado de salida del proceso y puede ser recopilado por el padre mediante una de las llamadas de la familia wait(2). La funcion _Exit() es equivalente a _exit(). VALOR DEVUELTO Estas funciones nunca regresan. ESTANDARES _exit() POSIX.1-2008. _Exit() C11, POSIX.1-2008. HISTORIAL POSIX.1-2001, SVr4, 4.3BSD. _Exit() fue introducido por C99. NOTAS Para una discusion sobre los efectos de una llamada exit, la transmision de estados de salida, procesos zombie, senales enviadas, etc., vea exit(3). La funcion _exit() es similar a exit(3), pero no invoca ninguna funcion registrada con atexit(3) o on_exit(3). No se vuelcan los flujos stdio(3) abiertos. Por otro lado, _exit() cierra los descriptores de archivo abiertos, lo que puede causar un retraso indeterminado a la espera de que finalice la salida pendiente. Si el retraso no es deseado, puede ser util llamar a funciones como tcflush(3) antes de llamar a _exit(). La cancelacion de cualquier E/S pendiente y cuales E/S pendiente se puede cancelar con _exit() dependera de la implementacion. Diferencias nucleo / biblioteca C En DESCRIPCION, se describe el efecto tradicional de _exit(), que consiste en terminar un proceso. Esta es la semantica definida en POSIX.1 e implementada por la funcion contenedora de la biblioteca C. En los sistemas modernos, esto significa la terminacion de todos los hilos del proceso. A diferencia de la funcion contenedora de la biblioteca C, la llamada al sistema _exit() de Linux termina solo el hilo que realiza la llamada, y acciones como reparentar procesos secundarios o enviar SIGCHLD al proceso primario solo se realizan si este es el ultimo hilo del grupo. Hasta glibc 2.3, la funcion contenedora _exit() invocaba la llamada al sistema del nucleo del mismo nombre. Desde glibc 2.3, esta funcion invoca exit_group(2) para terminar todos los hilos de un proceso. VEASE TAMBIEN execve(2), exit_group(2), fork(2), kill(2), wait(2), wait4(2), waitpid(2), atexit(3), exit(3), on_exit(3), termios(3) TRADUCCION La traduccion al espanol de esta pagina del manual fue creada por Juan Piernas , Nicolas Lichtmaier , Miguel Perez Ibars y Marcos Fouces Esta traduccion es documentacion libre; lea la GNU General Public License Version 3 o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD. Si encuentra algun error en la traduccion de esta pagina del manual, envie un correo electronico a . Paginas de Manual de Linux 6.15 17 Mayo 2025 _exit(2)