Udostępnij za pośrednictwem


_execute_onexit_table, , _initialize_onexit_table_register_onexit_function

Zarządza procedurami, które mają być wywoływane w czasie zakończenia.

Składnia

int _initialize_onexit_table(
    _onexit_table_t* table
    );

int _register_onexit_function(
    _onexit_table_t* table,
    _onexit_t        function
    );

int _execute_onexit_table(
    _onexit_table_t* table
    );

Parametry

table
[in, out] Wskaźnik do onexit tabeli funkcji.

function
[in] Wskaźnik do funkcji w celu dodania onexit do tabeli funkcji.

Wartość zwracana

W przypadku powodzenia funkcja zwraca wartość 0. W przeciwnym razie zwraca wartość ujemną.

Uwagi

Te funkcje to szczegóły implementacji infrastruktury używane do obsługi środowiska uruchomieniowego języka C i nie powinny być wywoływane bezpośrednio z kodu. Środowisko uruchomieniowe języka C używa onexit tabeli funkcji do reprezentowania sekwencji funkcji zarejestrowanych przez wywołania do atexit, at_quick_exiti _onexit. Struktura onexit danych tabeli funkcji jest nieprzezroczystym szczegółem implementacji środowiska uruchomieniowego języka C. Kolejność i znaczenie jej składowych danych może ulec zmianie. Nie powinny być sprawdzane przez kod zewnętrzny.

Funkcja _initialize_onexit_table inicjuje tabelę onexit funkcji na wartość początkową. Ta funkcja musi być wywoływana przed przekazaniem onexit tabeli funkcji do _register_onexit_function elementu lub _execute_onexit_table.

Funkcja _register_onexit_function dołącza funkcję na końcu onexit tabeli funkcji.

Funkcja _execute_onexit_table wykonuje wszystkie funkcje w onexit tabeli funkcji, czyści tabelę, a następnie zwraca. Po wywołaniu _execute_onexit_tablemetody tabela jest w stanie nieprawidłowym; musi zostać ponownie zainicjowana przez wywołanie metody , zanim _initialize_onexit_table zostanie ponownie użyta.

Domyślnie stan globalny tej funkcji jest zakresem aplikacji. Aby zmienić to zachowanie, zobacz Stan globalny w CRT.

Wymagania

Procedura Wymagany nagłówek
_initialize_onexit_table, , _register_onexit_function_execute_onexit_table C, C++: <process.h>

Funkcje _initialize_onexit_table, _register_onexit_functioni _execute_onexit_table są specyficzne dla firmy Microsoft. Aby uzyskać informacje o zgodności, zobacz Zgodność.

Zobacz też

atexit
exit, , _Exit_exit
_onexit, _onexit_m