CMemoryState::DumpStatistics

Druckt einen kurzen Arbeitsspeicherstatistikbericht von einem CMemoryState-Objekt, das durch die Unterschied-Memberfunktion gefüllt ist.

void DumpStatistics( ) const;

Hinweise

Der Bericht, der auf dem afxDump Gerät festzulegen, wird Folgendes angezeigt:

Ein Beispielbericht gibt Informationen über die Zahl (oder) Menge von:

  • freie Blöcke

  • normale Blöcke

  • CRT-Blöcke

  • ignorieren Sie Blöcke

  • Clientblöcke

  • Maximalwert Arbeitsspeicher zu jeder Zeit wird vom Programm (in Bytes)

  • Gesamte Arbeitsspeicher derzeit wird vom Programm (in Bytes)

Freie Blöcke sind die Anzahl der Blöcke, deren Freigabe verzögert wurde, wenn afxMemDF zu delayFreeMemDF festgelegt wurde.Weitere Informationen finden Sie unter afxMemDF, im "MFC-Makro- und -Werte" Abschnitt.Siehe Blocktypen auf dem Debugheap weitere Informationen zu diesen Blockstypen.

Beispiel

Der folgende Code sollte in projnameApp.cpp eingefügt werden.Definieren Sie die folgenden globalen Variablen:

static CMemoryState oldstate, newstate, diffstate;

In der InitInstance-Funktion fügen Sie die Zeile hinzu:

oldstate.Checkpoint();

Fügen Sie einen Handler für die ExitInstance-Funktion hinzu und verwenden Sie den folgenden Code:

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

Sie können das Programm im Debugmodus jetzt ausführen, um die Ausgabe zu finden DumpStatistics zu arbeiten.

Anforderungen

Header: afx.h

Siehe auch

Referenz

CMemoryState-Struktur

Hierarchien-Diagramm