std::at_quick_exit (3) - Linux Manuals

std::at_quick_exit: std::at_quick_exit

NAME

std::at_quick_exit - std::at_quick_exit

Synopsis


Defined in header <cstdlib>
int at_quick_exit( /*atexit-handler*/* func ) noexcept; (1) (since C++11)
int at_quick_exit( /*c-atexit-handler*/* func ) noexcept;
extern "C++" using /*atexit-handler*/ = void(); // exposition-only (2)
extern "C" using /*c-atexit-handler*/ = void(); // exposition-only


Registers the function pointed to by func to be called on quick program termination (via std::quick_exit).
Calling the function from several threads does not induce a data race. The implementation shall support the registration of at least 32 functions.
The registered functions will not be called on normal_program_termination. If a function need to be called in that case, std::atexit must be used.

Parameters


func - pointer to a function to be called on quick program termination

Return value


0 if the registration succeeds, nonzero value otherwise.

Notes


The two overloads are distinct because the types of the parameter func are distinct (language_linkage is part of its type)

Example


 This section is incomplete
 Reason: no example

See also


           causes abnormal program termination (without cleaning up)
abort (function)
           causes normal program termination with cleaning up
exit (function)
           registers a function to be called on std::exit() invocation
atexit (function)


quick_exit causes quick program termination without completely cleaning up
           (function)
(C++11)