_execute_onexit_table, _initialize_onexit_table, _register_onexit_function

Registra le routine da chiamare in fase di uscita.

Sintassi

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  
    );  

Parametri

[inout] table
Puntatore alla tabella di funzioni onexit.

[in] function
Puntatore a una funzione da aggiungere alla tabella di funzioni onexit.

Valore restituito

Se l'esito è positivo, il valore restituito è 0. In caso contrario viene restituito un valore negativo.

Note

Queste funzioni sono dettagli di implementazione dell'infrastruttura usati per supportare il runtime di C e devono essere chiamate direttamente dal codice. Il runtime di C usa una tabella di funzioni onexit per rappresentare la sequenza di funzioni registrate dalle chiamate a atexit, at_quick_exit, e _onexit. La struttura dei dati della tabella di funzioni onexit è un dettaglio di implementazione opaco del runtime di C; l'ordine e il significato dei relativi membri dati possono essere modificati. Non devono essere verificati da codice esterno.

La funzione _initialize_onexit_table consente di inizializzare la tabella di funzioni onexit al valore iniziale. Questa funzione deve essere chiamata prima che la tabella di funzioni onexit venga passata a _register_onexit_function o _execute_onexit_table.

La funzione _register_onexit_function accoda una funzione alla fine della tabella di funzioni onexit.

La funzione _execute_onexit_table esegue tutte le funzioni della tabella di funzioni onexit, cancella la tabella e quindi restituisce un risultato. Dopo una chiamata a _execute_onexit_table, la tabella è in uno stato non valido: deve essere reinizializzata da una chiamata a _initialize_onexit_table prima di essere usata nuovamente.

Requisiti

Routine Intestazione obbligatoria
_initialize_onexit_table function, _register_onexit_function, _execute_onexit_table C, C++: <process.h>

Le funzioni _initialize_onexit_table, _register_onexit_function e _execute_onexit_table sono specifiche di Microsoft. Per informazioni sulla compatibilità, vedere Compatibilità.

Vedere anche

atexit
exit, _Exit, _exit
_onexit, _onexit_m