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 起可用