Метод ICorDebugProcess5::EnumerateHeapRegions

Возвращает перечислитель для диапазонов памяти управляемой кучи.

Синтаксис

HRESULT EnumerateHeapRegions(  
   [out] ICorDebugHeapSegmentEnum **ppRegions  
);  

Параметры

ppRegions
[out] Указатель на адрес объекта интерфейса ICorDebugHeapSegmentEnum , который является перечислителем для диапазонов памяти, в которых находятся объекты в управляемой куче.

Комментарии

Перед вызовом ICorDebugProcess5::EnumerateHeapRegions метода необходимо вызвать метод ICorDebugProcess5::GetGCHeapInformation и проверить значение areGCStructuresValid поля возвращаемого объекта COR_HEAPINFO , чтобы убедиться, что куча сборки мусора в текущем состоянии перечислена. Кроме того, метод возвращает значение E_FAIL , ICorDebugProcess5::EnumerateHeapRegions если подключение выполняется слишком рано в течение времени существования процесса до создания областей памяти.

Этот метод гарантированно перечисляет все области памяти, которые могут содержать управляемые объекты, но он не гарантирует, что управляемые объекты фактически находятся в этих регионах. Объект коллекции ICorDebugHeapSegmentEnum может содержать пустые или зарезервированные области памяти.

Объект интерфейса ICorDebugHeapSegmentEnum — это стандартный перечислитель, производный от интерфейса ICorDebugEnum, который позволяет перечислять COR_SEGMENT объекты. Каждый объект COR_SEGMENT предоставляет сведения о диапазоне памяти определенного сегмента, а также о создании объектов в этом сегменте.

Требования

Платформы: см. раздел Требования к системе.

Заголовок: CorDebug.idl, CorDebug.h

Библиотека: CorGuids.lib

версии платформа .NET Framework: доступно с версии 4.5.

См. также раздел