_execute_onexit_table
, , _initialize_onexit_table
_register_onexit_function
Gère les routines à appeler au moment de la sortie.
Syntaxe
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
);
Paramètres
table
[in, out] Pointeur vers la table de onexit
fonctions.
function
[in] Pointeur vers une fonction à ajouter à la onexit
table de fonctions.
Valeur retournée
Si elle réussit, la fonction retourne 0. Sinon, elle retourne une valeur négative.
Notes
Ces fonctions sont des détails d’implémentation d’infrastructure utilisés pour prendre en charge le runtime C et ne doivent pas être appelés directement à partir de votre code. Le runtime C utilise une onexit
table de fonctions pour représenter la séquence de fonctions inscrites par des appels à atexit
, at_quick_exit
et _onexit
. La onexit
structure des données de la table de fonctions est un détail d’implémentation opaque du runtime C ; l’ordre et la signification de ses membres de données peuvent changer. Ils ne doivent pas être inspectés par du code externe.
La _initialize_onexit_table
fonction initialise la onexit
table de fonctions à sa valeur initiale. Cette fonction doit être appelée avant que la onexit
table de fonctions soit passée à l’une ou l’autre _register_onexit_function
_execute_onexit_table
.
La _register_onexit_function
fonction ajoute une fonction à la fin de la onexit
table de fonctions.
La _execute_onexit_table
fonction exécute toutes les fonctions de la onexit
table de fonctions, efface la table, puis retourne. Après un appel à _execute_onexit_table
, la table est dans un état non valide ; elle doit être réinitialisée par un appel avant de l’utiliser à _initialize_onexit_table
nouveau.
Par défaut, l’état global de cette fonction est limité à l’application. Pour modifier ce comportement, consultez État global dans le CRT.
Spécifications
Routine | En-tête requis |
---|---|
_initialize_onexit_table , , _register_onexit_function _execute_onexit_table |
C, C++ : <process.h> |
Les _initialize_onexit_table
fonctions et les fonctions _register_onexit_function
_execute_onexit_table
sont spécifiques à Microsoft. Pour plus d’informations sur la compatibilité, consultez Compatibilité.