NAME
quick_exit —
terminate a process
SYNOPSIS
#include
<stdlib.h>
_Noreturn void quick_exit(int status);
DESCRIPTION
[CX] The functionality described on this reference page is aligned with the ISO C standard. Any conflict between the requirements described here and the ISO C standard is unintentional. This volume of POSIX.1-2024 defers to the ISO C standard.
The quick_exit () function shall cause
normal process termination to occur. It shall not call functions registered
with atexit(3) nor any registered signal handlers. If a
process calls the quick_exit () function more than
once, or calls the exit(3) function in addition to the
quick_exit () function, the behavior is undefined.
If a signal is raised while the quick_exit ()
function is executing, the behavior is undefined.
The quick_exit () function shall first
call all functions registered by at_quick_exit(3), in the
reverse order of their registration, except that a function is called after
any previously registered functions that had already been called at the time
it was registered. If, during the call to any such function, a call to the
longjmp(3) [CX] or
siglongjmp(3) function is made that would terminate the
call to the registered function, the behavior is undefined.
If a function registered by a call to
at_quick_exit(3) fails to return, the remaining registered
functions shall not be called and the rest of the
quick_exit () processing shall not be completed.
Finally, the quick_exit ()
function shall terminate the process as if by a call to
_Exit (
status).
RETURN VALUE
The quick_exit () function does not
return.
ERRORS
No errors are defined.
EXAMPLES
None.
APPLICATION USAGE
None.
RATIONALE
None.
FUTURE DIRECTIONS
None.
SEE ALSO
_Exit(3), at_quick_exit(3), atexit(3), exit(3)
XBD <stdlib.h>
CHANGE HISTORY
First released in Issue 8. Included for alignment with the ISO/IEC 9899:2018 standard.