Freigeben über


ICorDebugProcess5::EnumerateHeap-Methode

Ruft einen Enumerator für die Objekte auf dem verwalteten Heap ab.

Syntax

HRESULT EnumerateHeap(
    [out] ICorDebugHeapEnum **ppObjects
);

Die Parameter

ppObject [out] Ein Zeiger auf die Adresse eines ICorDebugHeapEnum-Schnittstellenobjekts , das ein Enumerator für die Objekte ist, die sich im verwalteten Heap befinden.

Bemerkungen

Vor dem Aufrufen der ICorDebugProcess5::EnumerateHeap Methode sollten Sie die ICorDebugProcess5::GetGCHeapInformation-Methode aufrufen und den Wert des areGCStructuresValid Felds des zurückgegebenen COR_HEAPINFO-Objekts untersuchen, um sicherzustellen, dass der Heap der Garbage Collection im aktuellen Zustand aufgezählt werden kann. Darüber hinaus werden die ICorDebugProcess5::EnumerateHeap Rückgaben E_FAIL zurückgegeben, wenn Sie zu früh in der Lebensdauer des Prozesses anfügen, bevor der Speicher für den verwalteten Heap zugewiesen wird.

Das ICorDebugHeapEnum-Schnittstellenobjekt ist ein standardenumerator, der von der ICorDebugEnum-Schnittstelle abgeleitet ist, mit der Sie COR_HEAPOBJECT Objekte aufzählen können. Diese Methode füllt das ICorDebugHeapEnum-Auflistungsobjekt mit COR_HEAPOBJECT Instanzen auf, die Informationen zu allen Objekten bereitstellen. Die Auflistung kann auch COR_HEAPOBJECT Instanzen enthalten, die Informationen zu Objekten bereitstellen, die von keinem Objekt verwurzelt sind, aber noch nicht vom Garbage Collector erfasst wurden.

Anforderungen

Plattformen: Siehe .NET unterstützte Betriebssysteme.

Kopfball: CorDebug.idl, CorDebug.h

Bibliothek: CorGuids.lib

.NET-Versionen: Verfügbar seit .NET Framework 4.5

Siehe auch