_CrtDumpMemoryLeaks

Despejos de toda a memória bloqueia na pilha de depuração quando ocorre um vazamento de memória (somente a versão de depuração).

int _CrtDumpMemoryLeaks( void );

Valor de retorno

_CrtDumpMemoryLeaksRetorna VERDADEIRO se um vazamento de memória for encontrado.Caso contrário, a função retornará FALSE.

Comentários

O _CrtDumpMemoryLeaks função determina se um vazamento de memória ocorreu desde o início da execução do programa.Quando for encontrado um vazamento, as informações de cabeçalho de depuração para todos os objetos na heap serão despejadas de forma legível pelo usuário.Quando _ Debug não está definido, planos de _CrtDumpMemoryLeaks são removidos durante o pré-processamento.

_CrtDumpMemoryLeaksfreqüentemente é chamado no final da execução do programa para verificar que toda a memória alocada pelo aplicativo tinha sido liberada.A função pode ser chamada automaticamente no término do programa, ativando o _CRTDBG_LEAK_CHECK_DF campo de bits da _crtDbgFlag sinalizar usando o _CrtSetDbgFlag função.

_CrtDumpMemoryLeakschamadas _CrtMemCheckpoint para obter o estado atual da pilha e, em seguida, verifica o estado dos blocos que não foram liberadas.Quando um bloco dependentes é encontrado, _CrtDumpMemoryLeaks chamadas _CrtMemDumpAllObjectsSince informações de despejo para todos os objetos alocados na pilha desde o início da execução do programa.

Por padrão, blocos de tempo de execução c internos (_CRT_BLOCK) não estão incluídos nas operações de despejo de memória.O _CrtSetDbgFlag função pode ser usada para ativar o _CRTDBG_CHECK_CRT_DF um pouco de _crtDbgFlag para incluir esses blocos no processo de detecção de vazamento.

Para obter mais informações sobre as funções do estado de pilha e o _CrtMemState estrutura, consulte Funções de emissão de relatórios de estado de Heap.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.

Requisitos

Rotina

Cabeçalho necessário

_CrtDumpMemoryLeaks

<crtdbg.h>

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

Bibliotecas

Versões de depuração de bibliotecas de tempo de execução c somente.

Exemplo

Para obter um exemplo de como usar _CrtDumpMemoryLeaks, consulte crt_dbg1.

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