ICorProfilerInfo2::GetCodeInfo2 方法

获取与指定 FunctionID 关联的本机代码的范围。

语法

HRESULT GetCodeInfo2(
    [in]  FunctionID functionID,
    [in]  ULONG32 cCodeInfos,
    [out] ULONG32 *pcCodeInfos,
    [out, size_is(cCodeInfos), length_is(*pcCodeInfos)]
    COR_PRF_CODE_INFO codeInfos[]);

参数

functionID [in]与本机代码关联的函数的 ID。

cCodeInfos [in] codeInfos 数组的大小。

pcCodeInfos [out] 指向可用 COR_PRF_CODE_INFO 结构总数的指针。

codeInfos [out] 调用方提供的缓冲区。 返回此方法后,它包含一个 COR_PRF_CODE_INFO 结构数组,每个结构描述一个本机代码块。

注解

盘区按增加公共中间语言 (CIL) 偏移量的顺序进行排序。

返回 GetCodeInfo2 后,必须验证 codeInfos 缓冲区大小是否足以包含所有 COR_PRF_CODE_INFO 结构。 为此,请将 cCodeInfos 的值和 cchName 参数的值进行比较。 如果由 COR_PRF_CODE_INFO 结构大小划分的 cCodeInfos 值小于 pcCodeInfos 值,请分配更大的 codeInfos 缓冲区,将 cCodeInfos 更新为新的更大大小,并再次调用 GetCodeInfo2

或者,可以先用长度为零的 codeInfos 缓冲区调用 GetCodeInfo2 以获取正确的缓冲区大小。 然后可将 codeInfos 缓冲区大小设置为 pcCodeInfos 中返回的,乘以 COR_PRF_CODE_INFO 结构大小的值,并再次调用 GetCodeInfo2

要求

平台:请参阅系统要求

头文件: CorProf.idl、CorProf.h

库:CorGuids.lib

.NET Framework 版本:自 2.0 起可用

另请参阅