Compartilhar via


_CrtDoForAllClientObjects

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

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

Parâmetros

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

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

Comentários

O _CrtDoForAllClientObjects a função pesquisa de lista vinculada do heap para blocos de memória com o _CLIENT_BLOCK tipo e chama a função fornecida pelo aplicativo quando um bloco desse tipo for encontrada.O bloco encontrado e o context parâmetro são passados como argumentos para a função fornecida pelo aplicativo.Durante a depuração, um aplicativo pode acompanhar um grupo específico de alocações de chamar explicitamente a depuração de funções de heap alocar a memória e especificando que os blocos de ser atribuído a _CLIENT_BLOCK bloquear tipo.Esses blocos podem ser acompanhados separadamente e reportados maneira diferente durante a detecção de vazamento e relatório de estado de memória.

Se a _CRTDBG_ALLOC_MEM_DF campo de bits da _crtDbgFlag sinalizador não estiver ativado, _CrtDoForAllClientObjects retorna imediatamente.Quando DEBUG não está definido, planos de _CrtDoForAllClientObjects são removidos durante o pré-processamento.

Para obter mais informações sobre o _CLIENT_BLOCK digite e como ele pode ser usado por outras funções de depuração, consulte Tipos de blocos na pilha de depuração.Para obter informações sobre como blocos de memória são alocados, inicializados e gerenciados na versão de depuração da pilha base, consulte Gerenciamento de memória e a pilha de depuração.

Se pfn é NULL, o manipulador de parâmetro inválido é invocado, conforme descrito em Validação de parâmetro.Se a execução terá permissão para continuar, errno, _doserrno, _sys_errlist e _sys_nerr for definido como EINVAL e a função retornará.

Requisitos

Rotina

Cabeçalho necessário

_CrtDoForAllClientObjects

<crtdbg.h>, <errno.h>

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

Bibliotecas: versões de depuração de Recursos da biblioteca CRT somente.

Exemplo

Consulte dfacobjs.

Equivalência do .NET Framework

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

Consulte também

Referência

Rotinas de depuração

_CrtSetDbgFlag

_CrtReportBlockType

Conceitos

Funções de emissão de relatórios do estado de heap