CMemoryState::DumpStatistics
Premere statistiche della memoria concise riferimento da un oggetto CMemoryState che viene riempito dalla funzione membro differenza.
void DumpStatistics( ) const;
Note
Il rapporto, che viene spostato nel dispositivo afxDump, viene illustrato quanto segue:
Un rapporto di esempio vengono fornite informazioni sul numero (o) della quantità di:
blocchi liberi
blocchi normali
Blocchi CRT
ignora i blocchi
blocchi client
quantità massima di memoria utilizzata in qualsiasi momento dal programma (in byte)
memoria totale attualmente utilizzata dal programma (in byte)
I blocchi liberi rappresentano il numero di blocchi della cui deallocazione è stata ritardata se afxMemDF è impostato su delayFreeMemDF.Per ulteriori informazioni, vedere afxMemDF, nella sezione "Globals e di macro MFC."Vedere Tipi di blocchi sull'heap di debug per ulteriori informazioni su questi tipi di blocco.
Esempio
Il seguente codice deve essere inserito in projnameApp.cpp.Definire le seguenti variabili globali:
static CMemoryState oldstate, newstate, diffstate;
Nella funzione InitInstance, aggiungere la riga seguente:
oldstate.Checkpoint();
Aggiungere un gestore per la funzione ExitInstance e utilizzare il codice seguente:
newstate.Checkpoint();
if (diffstate.Difference(oldstate, newstate))
{
TRACE(_T("Memory leaked\n"));
diffstate.DumpStatistics();
}
È ora possibile eseguire il programma in modalità di debug per osservare l'output DumpStatistics eseguire.
Requisiti
Header: afx.h