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