Compartilhar via


_CrtDumpMemoryLeaks

Despejos de toda a memória bloqueia no heap de depurar quando ocorre um perda de memória (somente versão de depurar).

int _CrtDumpMemoryLeaks( void );

Valor de retorno

_CrtDumpMemoryLeaks Retorna VERDADEIRO se for encontrado um perda de memória. Caso contrário, a função retornará falso.

Comentários

The _CrtDumpMemoryLeaks função determina se um perda 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 depurar para todos os objetos na heap serão despejadas em um formulário pode ser entendido pelo usuário.Quando _DEBUG não estiver definido, chamadas de _CrtDumpMemoryLeaks serão removidos durante a pré-processamento.

_CrtDumpMemoryLeaks freqüentemente é chamado no participante da execução do programa para verificar toda a memória alocada pelo aplicativo foi liberada. A função pode ser chamada automaticamente no programa ativando o _CRTDBG_LEAK_CHECK_DF campo de bit da _crtDbgFlag sinalizar usando o _CrtSetDbgFlag função.

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

Por padrão, blocos de time de execução C internos (_CRT_BLOCK) não são incluídos em operações de despejo de memória. The _CrtSetDbgFlag função pode ser usada para ativar o _CRTDBG_CHECK_CRT_DF bit de _crtDbgFlag incluir esses bloqueia no processo de detecção de vazamento.

Para obter mais informações sobre funções de estado de heap e o _CrtMemState estrutura, consulte Estado de heap relatório funções.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 A pilha de depurar e gerenciamento de memória.

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 depurar de Bibliotecas de time de execução c somente.

Exemplo

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

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

Referência

Rotinas de depurar