Gewusst wie: Aktivieren der Speicherdiagnose
Dieses Thema gilt für folgende Anwendungsbereiche:
Edition |
Visual Basic |
C# |
F# |
C++ |
Web Developer |
---|---|---|---|---|---|
Express |
Nur "Systemeigen" |
||||
Pro, Premium und Ultimate |
Nur "Systemeigen" |
Damit Sie die Speicherdiagnosefeatures nutzen können, muss die Diagnosenachverfolgung aktiviert werden.
So aktivieren oder deaktivieren Sie die Speicherdiagnose
- Rufen Sie die globale AfxEnableMemoryTracking-Funktion auf, um die Diagnose-Speicherbelegungsfunktion zu aktivieren oder zu deaktivieren. Da die Speicherdiagnose in der Debugbibliothek standardmäßig aktiviert ist, wird diese Funktion in der Regel verwendet, um die Speicherdiagnose vorübergehend zu deaktivieren. Auf diese Weise wird die Programmausführung beschleunigt und die Diagnoseausgabe reduziert.
So wählen Sie spezifische Speicherdiagnosefeatures mit "afxMemDF" aus
Wenn Sie die Speicherdiagnosefeatures präziser steuern möchten, können Sie einzelne Features gezielt aktivieren und deaktivieren, indem Sie den Wert der globalen MFC-Variablen afxMemDF festlegen. Diese Variable wird über den enumerierten afxMemDF-Typ festgelegt und kann folgende Werte annehmen:
Wert
Bedeutung
allocMemDF
Aktivieren der Diagnose-Speicherbelegungsfunktion (Standard).
delayFreeMemDF
Verzögern der Speicherfreigabe nach dem Aufrufen von delete oder free bis zum Programmende. Auf diese Weise belegt das Programm den größtmöglichen Speicherplatz.
checkAlwaysMemDF
Aufrufen von AfxCheckMemory bei jeder Speicherbelegung oder -freigabe.
Diese Werte können mit logischen OR-Operationen auch kombiniert werden, z. B.:
afxMemDF = allocMemDF | delayFreeMemDF | checkAlwaysMemDF;