Freigeben über


_CrtMemDumpAllObjectsSince

Gibt Informationen zu Objekten im Heap ab Beginn der Programmausführung oder ab einem angegebenen Heapzustand aus (nur Debugversion).

void _CrtMemDumpAllObjectsSince(  
   const _CrtMemState *state  
);

Parameter

  • state
    Zeiger zum Heapzustand, ab dem die Ausgabe erfolgen soll, oder NULL.

Hinweise

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 die Ausgabe ab einem angegebenen Heapzustand zu beginnen, muss der state-Parameter ein Zeiger zu einer _CrtMemState-Struktur sein, die vor dem Aufruf von _CrtMemDumpAllObjectsSince durch _CrtMemCheckpoint gefüllt wurde. Wenn der state-Parameter NULL ist, startet die Funktion die Ausgabe ab Beginn der Programmausführung.

Wenn die Anwendung eine Dumphookfunktion durch Aufrufen von _CrtSetDumpClient installiert hat, wird die von der Anwendung bereitgestellte Dumpfunktion ebenfalls aufgerufen, wenn _CrtMemDumpAllObjectsSince Informationen zu einem _CLIENT_BLOCK-Blocktyp ausgibt. Standardmäßig sind interne C-Laufzeitblöcke (_CRT_BLOCK) nicht in Speicherabbildvorgängen enthalten. Die _CrtSetDbgFlag-Funktion kann zum Aktivieren des _CRTDBG_CHECK_CRT_DF-Bits von _crtDbgFlag verwendet werden, um diese Blöcke einzuschließen. Außerdem werden die Blöcke, die als "freigegeben" oder "ignoriert" markiert wurden (_FREE_BLOCK, _IGNORE_BLOCK) nicht im Speicherabbild berücksichtigt.

Weitere Informationen über Heapzustandsfunktionen und die _CrtMemState-Struktur finden Sie unter Berichtsfunktionen für den Heapzustand. Weitere Informationen darüber, wie Speicherblöcke in der Debugversion des Basisheaps zugeordnet, initialisiert und verwaltet werden, finden Sie unter Details zum CRT-Debugheap.

Anforderungen

Routine

Erforderlicher Header

_CrtMemDumpAll-ObjectsSince

<crtdbg.h>

Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität in der Einführung.

Bibliotheken

Nur Debugversionen von C-Laufzeitbibliotheken.

Beispiel

Ein Beispiel für die Verwendung von _CrtMemDumpAllObjectsSince finden Sie unter crt_dbg2.

.NET Framework-Entsprechung

Nicht zutreffend. Mit PInvoke rufen Sie die Standard-C-Funktion auf. Weitere Informationen finden Sie unter Beispiele für Plattformaufrufe.

Siehe auch

Referenz

Debugroutinen

_crtDbgFlag