ICorProfilerInfo 接口
提供了一些方法,供代码探查器用来与公共语言运行时 (CLR) 通信,以控制事件监视并请求信息。
注意
ICorProfilerInfo
接口中的每个方法均返回一个 HRESULT,指示成功或失败。 有关可能的返回代码的列表,请参阅 CorError.h。
方法
方法 | 说明 |
---|---|
BeginInprocDebugging 方法 | 初始化进程内调试支持。 此方法在 .NET Framework 2.0 版中已过时。 |
EndInprocDebugging 方法 | 关闭进程内调试会话。 此方法在 .NET Framework 2.0 版中已过时。 |
ForceGC 方法 | 强制在运行时内进行垃圾回收。 |
GetAppDomainInfo 方法 | 获取有关指定应用程序域的信息。 |
GetAssemblyInfo 方法 | 获取有关指定程序集的信息。 |
GetClassFromObject 方法 | 获取一个对象的 ClassID (在给定其 ObjectID 的情况下)。 |
GetClassFromToken 方法 | 在给定元数据令牌的情况下,获取类的 ID。 此方法在 .NET Framework 2.0 版中已过时。 改用 ICorProfilerInfo2::GetClassFromTokenAndTypeArgs 方法。 |
GetClassIDInfo 方法 | 获取指定类的父模块和元数据令牌。 |
GetCodeInfo 方法 | 获取与指定函数 ID 关联的本机代码的范围。 此方法已过时。 改用 ICorProfilerInfo2::GetCodeInfo2 方法。 |
GetCurrentThreadID 方法 | 获取当前线程的 ID(如果它是托管线程)。 |
GetEventMask 方法 | 获取探查器要为其接收来自 CLR 的事件通知的当前事件类别。 |
GetFunctionFromIP 方法 | 将托管代码指令指针映射到 FunctionID 。 |
GetFunctionFromToken 方法 | 获取函数的 ID。 此方法在 .NET Framework 2.0 版中已过时。 改用 ICorProfilerInfo2::GetFunctionFromTokenAndTypeArgs 方法。 |
GetFunctionInfo 方法 | 获取指定函数的父类和元数据标记。 |
GetHandleFromThread 方法 | 将线程的 ID 映射到 Win32 线程句柄。 |
GetILFunctionBody 方法 | 获取指向公共中间语言 (CIL) 代码中方法正文的指针,从其标头开始。 |
GetILFunctionBodyAllocator 方法 | 获取一个接口,该接口提供用于分配内存的方法,用于在 CIL 代码中交换方法的主体。 |
GetILToNativeMapping 方法 | 获取从 CIL 偏移量到指定函数中包含的代码的本机偏移量的映射。 |
GetInprocInspectionInterface 方法 | 获取一个对象,该对象可查询 ICorDebugProcess 接口。 此方法在 .NET Framework 2.0 版中已过时。 |
GetInprocInspectionIThisThread 方法 | 获取一个对象,该对象可查询 ICorDebugThread 接口。 此方法在 .NET Framework 2.0 版中已过时。 |
GetModuleInfo 方法 | 给定模块 ID 后,将返回模块的文件名和模块的父程序集的 ID。 |
GetModuleMetaData 方法 | 获取映射到指定模块的元数据接口实例。 |
GetObjectSize 方法 | 获取指定对象的大小。 |
GetThreadContext 方法 | 获取当前与指定线程关联的上下文标识。 |
GetThreadInfo 方法 | 获取指定线程的当前 Win32 线程标识。 |
GetTokenAndMetadataFromFunction 方法 | 获取元数据令牌和可用于指定函数的令牌的元数据接口实例。 |
IsArrayClass 方法 | 确定指定的类是否是数组类。 |
SetEnterLeaveFunctionHooks 方法 | 指定在托管函数的“进入”、“离开”和“尾调用”挂钩上调用的探查器实现函数。 |
SetEventMask 方法 | 设置一个值,用于指定探查器要从 CLR 接收其相关通知的事件的类型。 |
SetFunctionIDMapper 方法 | 指定将调用以将 FunctionID 值映射至替换值(传递至探查器的输入/退出挂钩)的探查器实现函数。 |
SetFunctionReJIT 方法 | 未实现。 请勿使用。 |
SetILFunctionBody 方法 | 替换指定模块中指定函数的主体。 |
SetILInstrumentedCodeMap 方法 | 指定指定函数的原始 CIL 的偏移量如何映射到函数的探查器修改 CIL 的新偏移量。 |
注解
探查器调用 ICorProfilerInfo
接口中的方法与 CLR 进行通信以控制事件监视和请求信息。
ICorProfilerInfo
接口的方法是由 CLR 使用自由线程的模型实现的。 每个方法均返回一个 HRESULT,指示成功或失败。 有关可能的返回代码的列表,请参阅 CorError.h。
CLR 在初始化期间通过探查器的 ICorProfilerCallback::Initialize 实现向每个代码探查器传递一个 ICorProfilerInfo
接口。 然后,代码探查器可调用 ICorProfilerInfo
接口的方法来获取有关正在 CLR 控制下执行的托管代码的信息。
要求
平台:请参阅系统要求。
头文件: CorProf.idl、CorProf.h
库:CorGuids.lib
.NET Framework 版本:自 2.0 起可用