Compartilhar via


_execute_onexit_table, _initialize_onexit_table, _register_onexit_function

Gerencia as rotinas que serão chamadas no tempo de saída.

Sintaxe

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

Parâmetros

table
[dentro, fora] Ponteiro para a onexit tabela de funções.

function
[em] Ponteiro para uma função a ser adicionada à tabela de onexit funções.

Valor retornado

Se for bem-sucedida, a função retornará 0. Caso contrário, ele retornará um valor negativo.

Comentários

Essas funções são detalhes de implementação de infraestrutura usados para dar suporte ao runtime C e não devem ser chamadas diretamente do seu código. O tempo de execução C usa uma onexit tabela de funções para representar a sequência de funções registradas por chamadas para atexit, at_quick_exite _onexit. A onexit estrutura de dados da tabela de funções é um detalhe de implementação opaco do tempo de execução C; a ordem e o significado de seus membros de dados podem ser alterados. Eles não devem ser inspecionados por código externo.

A _initialize_onexit_table função inicializa a onexit tabela de funções para seu valor inicial. Essa função deve ser chamada antes que a tabela de onexit funções seja passada para ou _register_onexit_function _execute_onexit_table.

A _register_onexit_function função acrescenta uma função ao final da tabela de onexit funções.

A _execute_onexit_table função executa todas as funções na onexit tabela de funções, limpa a tabela e retorna. Após uma chamada para _execute_onexit_table, a tabela está em um estado inválido; ela deve ser reinicializada por uma chamada para _initialize_onexit_table antes de ser usada novamente.

Por padrão, o estado global dessa função tem como escopo o aplicativo. Para alterar esse comportamento, confira Estado global no CRT.

Requisitos

Rotina Cabeçalho necessário
_initialize_onexit_table, _register_onexit_function, _execute_onexit_table C, C++: <process.h>

As funções _initialize_onexit_table, _register_onexit_function e _execute_onexit_table são específicas da Microsoft. Para obter informações sobre compatibilidade, consulte Compatibilidade.

Confira também

atexit
exit, _Exit, _exit
_onexit, _onexit_m