ICorDebugProcess5::EnumerateHeapRegions 方法

获取托管堆的内存范围的枚举器。

Syntax

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

参数

ppRegions [out]指向 ICorDebugHeapSegmentEnum 接口对象的地址的指针,该对象是托管堆中对象所在内存范围的枚举器。

注解

在调用ICorDebugProcess5::EnumerateHeapRegions该方法之前,应调用 ICorDebugProcess5::GetGCHeapInformation 方法并检查返回areGCStructuresValid 对象的字段的值,以确保其当前状态中的垃圾回收堆可枚举。 此外,如果在进程的生存期内附加时间过早,在创建内存区域之前,该方法 ICorDebugProcess5::EnumerateHeapRegionsE_FAIL 返回此方法。

此方法可以保证枚举可能包含托管对象的所有内存区域,但不能保证托管对象实际驻留在这些区域中。 ICorDebugHeapSegmentEnum 集合对象可能包括空或保留的内存区域。

ICorDebugHeapSegmentEnum 接口对象是派生自 ICorDebugEnum 接口的标准枚举器,可用于枚举COR_SEGMENT对象。 每个 COR_SEGMENT 对象都提供有关特定段的内存范围以及该段中对象的生成的信息。

要求

平台: 请参阅 .NET 支持的作系统

页眉: CorDebug.idl、CorDebug.h

图书馆: CorGuids.lib

.NET 版本: 自 .NET Framework 4.5 起可用

另请参阅