_CrtMemDumpAllObjectsSince
Gibt Informationen zu Objekten im Heap ab Beginn der Programmausführung oder ab einem angegebenen Heapzustand aus (nur Debugversion).
Syntax
void _CrtMemDumpAllObjectsSince(
const _CrtMemState *state
);
Parameter
state
Zeiger auf den Heapzustand, der mit dem Dumping von oder NULL
beginnen soll.
Bemerkungen
Die _CrtMemDumpAllObjectsSince
-Funktion gibt die Debugheaderinformationen von Objekten, die im Heap zugeordnet sind, in einer für den Benutzer lesbaren Formular aus. Die Dumpinformationen können von der Anwendung zum Nachverfolgen von Zuordnungen und zum Erkennen von Speicherproblemen verwendet werden. Wenn _DEBUG
nicht definiert ist, werden Aufrufe von _CrtMemDumpAllObjectsSince
während der Vorverarbeitung entfernt.
_CrtMemDumpAllObjectsSince
verwendet den Wert des state
-Parameters, um zu ermitteln, wo der Dumpvorgang initiiert werden soll. Um mit dem Dumping von einem angegebenen Heapzustand zu beginnen, muss der state
Parameter ein Zeiger auf eine _CrtMemState
Struktur sein, die von _CrtMemCheckpoint
ausgefüllt wurde, bevor _CrtMemDumpAllObjectsSince
aufgerufen wurde. Wenn state
ist NULL
, beginnt die Funktion mit dem Speicherabbild ab dem Beginn der Programmausführung.
Wenn die Anwendung eine Dump-Hook-Funktion installiert hat, indem sie aufruft _CrtSetDumpClient
, ruft sie jedes Mal, wenn _CrtMemDumpAllObjectsSince
Speicherabbildinformationen zu einem _CLIENT_BLOCK
Blocktyp erstellt werden, auch die von der Anwendung bereitgestellte Dumpfunktion auf. Standardmäßig sind interne C-Laufzeitblöcke (_CRT_BLOCK
) nicht in Speicherabbildvorgänge enthalten. Die _CrtSetDbgFlag
-Funktion kann verwendet werden, um das _CRTDBG_CHECK_CRT_DF
Bit von _crtDbgFlag
zu aktivieren, um diese Blöcke einzuschließen. Darüber hinaus sind Blöcke, die als freigegeben oder ignoriert (_FREE_BLOCK
, ) gekennzeichnet sind, _IGNORE_BLOCK
nicht im Speicherabbild enthalten.
Weitere Informationen zu Heapzustandsfunktionen und der _CrtMemState
-Struktur finden Sie unter Heapstatusberichtsfunktionen. Weitere Informationen dazu, wie Speicherblöcke in der Debugversion des Basisheaps zugeordnet, initialisiert und verwaltet werden, finden Sie unter CRT-Debugheapdetails.
Anforderungen
-Routine zurückgegebener Wert | Erforderlicher Header |
---|---|
_CrtMemDumpAll-ObjectsSince | <crtdbg.h> |
Weitere Informationen zur Kompatibilität finden Sie unter Compatibility.
Bibliotheken
Nur Debugversionen der C-Laufzeitbibliotheken.
Beispiel
Ein Beispiel für die Verwendung _CrtMemDumpAllObjectsSince
von finden Sie unter crt_dbg2
.