Compartir a través de


CMemoryState::DumpStatistics

Imprime estadísticas precisas de memoria salen de un objeto de CMemoryState que se rellena con la función miembro de Diferencia .

void DumpStatistics( ) const;

Comentarios

El informe, que se imprime en el dispositivo de afxDump , muestra lo siguiente:

Un informe de ejemplo ofrece información en el número (o la cantidad) de:

  • bloques libres

  • bloques normales

  • Bloques CRT

  • omita los bloques

  • bloques de cliente

  • memoria máxima utilizada por el programa en cualquier momento (en bytes)

  • memoria total utilizada actualmente por el programa (en bytes)

Los bloques libres son el número de bloques cuya desasignación se y si afxMemDF se estableció en delayFreeMemDF. Para obtener más información, vea afxMemDF, en la sección “macros y Globals MFC”. Vea Tipos de bloques del montón de depuración para obtener más información sobre estos tipos de bloques.

Ejemplo

El siguiente código debe colocarse en projnameApp.cpp. Definir las variables globales siguientes:

static CMemoryState oldstate, newstate, diffstate;

En función de InitInstance , agregue la línea:

oldstate.Checkpoint();

Agregue un controlador para la función de ExitInstance y utilice el código siguiente:

newstate.Checkpoint();
if (diffstate.Difference(oldstate, newstate))
{
   TRACE(_T("Memory leaked\n"));
   diffstate.DumpStatistics();
}

Ahora puede ejecutar el programa en modo de depuración para ver el resultado de DumpStatistics trabajar.

Requisitos

encabezado: afx.h

Vea también

Referencia

CMemoryState Structure

Gráfico de jerarquías