CMemoryState::DumpStatistics
Imprime um relatório de estatísticas concisa de memória por um CMemoryState objeto que é preenchido pela Diferençafunção de membro .
void DumpStatistics( ) const;
Comentários
O relatório, que é impresso no afxDump dispositivo, mostra o seguinte:
Um exemplo de relatório fornece informações sobre o número (ou valor) de:
blocos disponível
blocos normais
Blocos de CRT
Ignorar blocos
blocos de cliente
máxima de memória usada pelo programa a qualquer momento (em bytes)
memória total usada atualmente pelo programa (em bytes)
Blocos disponível são o número de blocos cuja desalocação foi atrasada se afxMemDF foi definido como delayFreeMemDF.Para obter mais informações, consulte afxMemDF, na seção "Macros da MFC e Globals".See Tipos de blocos no Heap depurar para obter mais informações sobre esses bloqueiam tipos.
Exemplo
O código a seguir deve ser colocado em NomeDoProjetoApp.cpp.Definir as seguintes variáveis global:
static CMemoryState oldstate, newstate, diffstate;
No InitInstance função, adicione a linha:
oldstate.Checkpoint();
Adicionar um manipulador para o ExitInstance função e use o seguinte código:
newstate.Checkpoint();
if (diffstate.Difference(oldstate, newstate))
{
TRACE(_T("Memory leaked\n"));
diffstate.DumpStatistics();
}
Agora você pode executar o programa em modo de depurar para ver a saída do DumpStatistics função.
Requisitos
Cabeçalho: afx.h