Метод 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