Partilhar via


_CrtDoForAllClientObjects

Chama uma função fornecida pelo aplicativo para todos os _CLIENT_BLOCK tipos no heap (somente versão de depurar).

void _CrtDoForAllClientObjects( 
   void ( * pfn )( void *, void * ),
   void *context
);

Parâmetros

  • pfn
    Ponteiro para a função de retorno de chamada de função fornecido pelo aplicativo.O primeiro parâmetro para essa função aponta para os dados.O segundo parâmetro é o ponteiro de contexto que é passado para a telefonar para _CrtDoForAllClientObjects.

  • context
    Ponteiro para o contexto fornecido pelo aplicativo para passar para a função fornecida pelo aplicativo.

Comentários

The _CrtDoForAllClientObjects função pesquisa lista vinculada da heap para blocos de memória com o _CLIENT_BLOCK tipo e chamadas encontram-se a função fornecida pelo aplicativo quando um bloco desse tipo. O bloco encontrado e o context parâmetro são passados sistema autônomo argumentos para a função fornecida pelo aplicativo. Durante a depurar, um aplicativo pode acompanhar um agrupar específico de alocações de chamar explicitamente a depurar de funções de heap alocar a memória e especificando que os blocos de ser atribuído a _CLIENT_BLOCK tipo de bloco. Esses blocos podem ser rastreados separadamente e relatados diferente durante a detecção de vazamento e relatório de estado de memória.

Se o _CRTDBG_ALLOC_MEM_DF campo de bit da _crtDbgFlag sinalizar não está ativado, _CrtDoForAllClientObjects retorna imediatamente. Quando _DEBUG não foi definido, chamadas para _CrtDoForAllClientObjects serão removidos durante a pré-processamento.

Para obter mais informações sobre o _CLIENT_BLOCK Digite e como ele pode ser usado por outras funções de depurar, consulte Tipos de blocos na heap de Depurar. Para obter informações sobre como os blocos de memória são alocados, inicializado e gerenciado na versão de depurar do heap de base, consulte Gerenciamento de memória e a pilha de Depurar.

If pfn é NULL, o manipulador de parâmetro inválido é chamado, conforme descrito em Validação de parâmetro. Se a execução for permitida para continuar, errno, _doserrno, _sys_errlist e _sys_nerr é conjunto para EINVAL e a função retorna.

Requisitos

Rotina

Cabeçalho necessário

_CrtDoForAllClientObjects

<crtdbg.h>, <errno.h>

Para obter mais informações de compatibilidade, consulte Compatibility na introdução.

Bibliotecas: Versões de depurar de C em time de execução bibliotecas somente.

Exemplo

Seedfacobjs exemplo: C Run-Time _CrtDoForAllClientObjects função.

Equivalente do NET Framework

Não aplicável. Para telefonar a função C padrão, use PInvoke. Para obter mais informações, consulte Exemplos de invocação de plataforma.

Consulte também

Conceitos

Funções de Relatórioss de estado de heap

Referência

Rotinas de depurar

_CrtSetDbgFlag

_CrtReportBlockType