ICorProfilerInfo3 接口

提供一些方法,代码探查器可以使用这些方法与公共语言运行时 (CLR) 通信,从而控制事件监视并请求信息。 ICorProfilerInfo3 接口是 ICorProfilerInfo2 接口的扩展。 它提供在 .NET Framework 4 版及更高版本中支持的新方法。

方法

方法

说明

ICorProfilerInfo3::EnumJITedFunctions 方法

返回以前所有 JIT 编译的函数的枚举器。

ICorProfilerInfo3::EnumModules 方法

返回一个枚举器,它提供按顺序循环访问应用程序或探查器加载的托管模块集合的方法。

ICorProfilerInfo3::GetAppDomainsContainingModule 方法

获取其中加载了给定模块的应用程序域的标识符。

ICorProfilerInfo3::GetFunctionEnter3Info 方法

提供函数的堆栈帧和参数信息,该函数正通过 FunctionEnter3WithInfo 函数报告给探查器;只能在 FunctionEnter3WithInfo 回调期间调用。

ICorProfilerInfo3::GetFunctionLeave3Info 方法

提供函数的堆栈帧和返回值,该函数正通过 FunctionLeave3WithInfo function 函数报告给探查器;只能在 FunctionLeave3WithInfo 回调期间调用。

ICorProfilerInfo3::GetFunctionTailcall3Info 方法

提供函数的堆栈帧,该函数正通过 FunctionTailcall3WithInfo 函数报告给探查器;只能在 FunctionTailcall3WithInfo 回调期间调用。

ICorProfilerInfo3::GetModuleInfo2 方法

给定一个模块 ID,返回该模块的文件名、模块的父程序集的 ID,以及说明该模块属性的位屏蔽。

ICorProfilerInfo3::GetRuntimeInformation 方法

提供有关正在分析的运行时的版本信息。

ICorProfilerInfo3::GetStringLayout2 方法

获取有关字符串对象的布局的信息。

ICorProfilerInfo3::GetThreadStaticAddress2 方法

获取位于指定的线程和应用程序域范围内的指定线程静态字段的地址。

ICorProfilerInfo3::RequestProfilerDetach 方法

指示运行时分离探查器。

ICorProfilerInfo3::SetEnterLeaveFunctionHooks3 方法

指定要在 FunctionEnter3FunctionLeave3FunctionTailcall3 函数上调用的探查器实现函数。

ICorProfilerInfo3::SetEnterLeaveFunctionHooks3WithInfo 方法

指定要在托管函数的 FunctionEnter3WithInfoFunctionLeave3WithInfoFunctionTailcall3WithInfo 挂钩上调用的探查器实现函数。

ICorProfilerInfo3::SetFunctionIDMapper2 方法

指定将要调用以便将 FunctionID 值映射到替代值的探查器实现的函数,这些替代值将传递给探查器的函数入口/出口挂钩。 此方法使用探查器可用来消除运行时之间的歧义的参数来扩展 ICorProfilerInfo::SetFunctionIDMapper

备注

CLR 通过使用自由线程的模型实现 ICorProfilerInfo3 接口的方法。 每个方法都会返回一个指示成功或失败的 HRESULT。 有关可能的返回代码的列表,请参见 CorError.h 文件。

在初始化过程中,CLR 会使用各代码探查器的 ICorProfilerCallback::Initialize 实现或 ICorProfilerCallback3::InitializeForAttach 方法,向其传递一个 ICorProfilerInfo3 接口。 这样,代码探查器便可以调用 ICorProfilerInfo3 方法,以获取有关要在 CLR 的控制下执行的托管代码的信息。

有关 AppDomainID 和 FunctionID 值的信息,请参见分析和运行时通知 ID

要求

**平台:**请参见 .NET Framework 系统要求

**头文件:**CorProf.idl、CorProf.h

**库:**CorGuids.lib

.NET Framework 版本:  4

请参见

参考

ICorProfilerInfo 接口

其他资源

分析接口