检索泛型字典映射。
Syntax
HRESULT GetGenericDictionaryInfo(
   [out] ICorDebugMemoryBuffer** ppMemoryBuffer
);
参数
ppMemoryBuffer
[out]指向包含泛型字典映射的 ICorDebugMemoryBuffer 对象的地址的指针。 有关详细信息,请参阅“备注”部分。
注解
注释
此方法仅适用于 .NET Native。
地图由两个顶级部分组成:
目录
目录中的每个条目都引用堆内的偏移量;也就是说,它是相对于堆开始的偏移量。 单个条目的值不一定是唯一的;多个目录条目可能指向堆中的同一偏移量。
泛型字典映射的目录部分具有以下结构:
- 前 4 个字节包含字典条目数(即字典中的相对虚拟地址数)。 我们将此值称为 N。如果设置了高位,则条目按相对虚拟地址按升序排序。 
- 后面有 N 个目录条目。 每个条目包含 8 个字节,两个 4 字节段: - 字节 0-3:RVA;字典的相对虚拟地址。 
- 字节 4-7:偏移量;相对于堆开始的偏移量。 
 
堆
通过从目录大小 + 4 中减去流的长度,流读取器可以计算堆的大小。 换句话说:
Heap Size = Stream.Length – (Directory Size + 4)
其中目录大小为 N * 8.
堆上每个实例化信息项的格式为:
- 此实例化信息项的长度(以字节为单位)采用压缩的 ECMA 元数据格式。 该值排除此长度信息。 
- 采用压缩 ECMA 元数据格式的泛型实例化类型或 T 的数量。 
- T 类型,每个类型都以 ECMA 类型签名格式表示。 
包含每个堆元素的长度可实现对目录部分的简单排序,而不会影响堆。
要求
平台: 请参阅 .NET 支持的作系统。
页眉: CorDebug.idl、CorDebug.h
图书馆: CorGuids.lib
.NET 版本: 自 .NET Framework 4.6 起可用