Compartilhar via


Estado de heap relatório funções

Este tópico se aplica a:

Edição

Visual Basic

C#

C++

Desenvolvedores Web

Express

Somente nativo

Padrão

Somente nativo

PRO e equipe

Somente nativo

Legenda de tabela:

Aplica-se

Não é aplicada

Comando ou comandos oculta por padrão.

Várias funções relatório o Sumário da pilha de depurar em dado momento.

_CrtMemState

Para capturar um instantâneo do estado do resumo de heap em um determinado momento, use a estrutura _CrtMemState definida no CRTDBG.H:

typedef struct _CrtMemState
{
    // Pointer to the most recently allocated block:
    struct _CrtMemBlockHeader * pBlockHeader;
    // A counter for each of the 5 types of block:
    size_t lCounts[_MAX_BLOCKS];
    // Total bytes allocated in each block type:
    size_t lSizes[_MAX_BLOCKS];
    // The most bytes allocated at a time up to now:
    size_t lHighWaterCount;
    // The total bytes allocated at present:
    size_t lTotalCount;
} _CrtMemState;

Essa estrutura salva um ponteiro para o primeiro bloco (mais recentemente alocado) na lista vinculada do heap de depurar.Em seguida, em duas matrizes, ele registra quantos de cada tipo de bloco de memória (_NORMAL_BLOCK, _CLIENT_BLOCK_FREE_BLOCK, e assim por diante) estão na lista e o número de bytes alocados em cada tipo de bloco. Por fim, ele registra o maior número de bytes alocados no heap sistema autônomo um todo até esse ponto e o número de bytes alocados no momento.

Outras funções de CRT Reporting

As seguintes funções relatam o estado e Sumário do heap e use as informações para ajudar a detectar vazamentos de memória e outros problemas.

Função

Descrição

_CrtMemCheckpoint

Salva um instantâneo do heap em uma estrutura _CrtMemState fornecido pelo aplicativo.

_CrtMemDifference

Compara duas estruturas de estado da memória, salva a diferença entre eles em uma estrutura de estado de terceira e retorna VERDADEIRO se dois estados são diferentes.

_CrtMemDumpStatistics

Despeja uma estrutura _CrtMemState determinado.A estrutura pode conter um instantâneo do estado da depurar heap em dado momento ou a diferença entre dois instantâneos.

_CrtMemDumpAllObjectsSince

Despeja informações sobre todos os objetos alocados desde um determinada instantâneo foi tirado da pilha ou de início da execução.Cada time-Despeja um _CLIENT_BLOCK bloco, ele chama uma função de gancho fornecida pelo aplicativo, se um tiver sido instalado usando _CrtSetDumpClient.

_CrtDumpMemoryLeaks

Determina se qualquer memória vazamentos ocorreu desde o início da execução do programa e, em caso afirmativo, descarta todos os objetos alocados.Cada vez _CrtDumpMemoryLeaks Despeja um _CLIENT_BLOCK bloco, ele chama uma função de gancho fornecida pelo aplicativo, se um tiver sido instalado usando _CrtSetDumpClient.

Consulte também

Outros recursos

A Heap depurar CRT