_CrtCheckMemory
Confirma a integridade dos blocos de memória alocada no heap de depurar (somente versão de depurar).
int _CrtCheckMemory( void );
Valor de retorno
Se for bem-sucedido, _CrtCheckMemory Retorna VERDADEIRO; caso contrário, que a função retornará falso.
Comentários
The _CrtCheckMemory função valida a memória alocada pelo Gerenciador de heap de depurar através da verificação de heap de base subjacente e inspecionar cada bloco de memória. Se for encontrada uma inconsistência de erro ou memória base subjacente de heap, as informações de cabeçalho de depurar ou os buffers de substituir _CrtCheckMemory gera um relatório de depurar com informações que descrevam a condição de erro. Quando _DEBUG não estiver definido, chamadas de _CrtCheckMemory serão removidos durante a pré-processamento.
O comportamento de _CrtCheckMemory pode ser controlada por definir campos de bit a _crtDbgFlag sinalizar usando o _CrtSetDbgFlag função.Ativando o _CRTDBG_CHECK_ALWAYS_DF bit campo ON resultados em _CrtCheckMemory sendo chamado sempre que for solicitada uma operação de alocação de memória. Embora esse método lento em execução, é útil para captura de erros rapidamente.Ativando o _CRTDBG_ALLOC_MEM_DF campo de bit OFF causas _CrtCheckMemory para não verificar a heap e retorno imediatamente TRUE.
Como essa função retorna TRUE or FALSE, ele pode ser passado para um o _ASSERT macros para criar um simples mecanismo de tratamento de erro de depuração.O exemplo a seguir faz com que um erro de declaração se corrupção for detectada no heap:
_ASSERTE( _CrtCheckMemory( ) );
Para obter mais informações sobre como _CrtCheckMemory pode ser usado com outras funções de depurar, consulte Estado de heap relatório funções.Para obter uma visão geral de gerenciamento de memória e a pilha de depurar, consulte A pilha de depurar e gerenciamento de memória.
Requisitos
Rotina |
Cabeçalho necessário |
---|---|
_CrtCheckMemory |
<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 _CrtCheckMemory, consulte crt_dbg1.
Equivalente do NET Framework
sistema::Diagnóstico::PerformanceCounter