分析全局静态函数

本节描述分析 API 使用的非托管 API 函数。

本节内容

.NET Framework 版本 1 分析函数

FunctionEnter 函数
通知探查器正在向函数传递控制。 在 .NET Framework 2.0 中被弃用。

FunctionLeave 函数
通知探查器某个函数将要返回到调用方。 在 .NET Framework 2.0 中被弃用。

FunctionTailcall 函数
通知探查器当前正在执行的函数即将对另一个函数执行尾调用。 在 .NET Framework 2.0 中被弃用。

.NET Framework 版本 2 分析函数

FunctionIDMapper 函数
通知探查器可能会将函数的给定标识符重新映射到备用 ID,从而在该函数的 FunctionEnter2FunctionLeave2FunctionTailcall2 回调中使用。 此外还要使探查器指示它是否想要接收该函数的回调

FunctionEnter2 函数
通知探查器正在向函数传递控制,并提供有关堆栈帧和函数参数的信息。 在 .NET Framework 4 中被弃用。

FunctionLeave2 函数
通知探查器某个函数将要返回到调用方,并提供有关堆栈帧和函数返回值的信息。 在 .NET Framework 4 中被弃用。

FunctionTailcall2 函数
通知探查器当前正在执行的函数即将对另一个函数执行尾调用,并提供有关堆栈帧的信息。 在 .NET Framework 4 中被弃用。

StackSnapshotCallback 函数
为探查器提供有关每个托管帧以及在堆栈审核期间由 ICorProfilerInfo2::DoStackSnapshot 方法启动的非托管帧的每次运行的信息。

.NET Framework 版本 4 分析函数

FunctionIDMapper2 函数
通知探查器可能会将函数的给定标识符重新映射到备用 ID,从而在该函数的 FunctionEnter3FunctionLeave3FunctionTailcall3FunctionEnter3WithInfoFunctionLeave3WithInfoFunctionTailcall3WithInfo 回调中使用。 此外还要使探查器指示它是否想要接收该函数的回调。

FunctionIDMapper2 使用 clientData 参数扩展 FunctionIDMapper 函数,探查器可以使用该参数消除运行时之间的歧义。

FunctionEnter3 函数
通知探查器正在向函数传递控制。

FunctionEnter3WithInfo 函数
通知探查器正在向函数传递控制,并提供可传递给 ICorProfilerInfo3::GetFunctionEnter3Info 的句柄以检索堆栈帧和函数参数。

FunctionLeave3 函数
通知探查器正在从函数返回控制。

FunctionLeave3WithInfo 函数
通知探查器正在从函数返回控制,并提供可传递给 ICorProfilerInfo3::GetFunctionLeave3Info 的句柄以检索堆栈帧和返回值。

FunctionTailcall3 函数
通知探查器当前正在执行的函数即将对另一个函数执行尾调用。

FunctionTailcall3WithInfo 函数
通知探查器当前正在执行的函数即将对另一个函数执行尾调用,并提供可传递给 ICorProfilerInfo3::GetFunctionTailcall3Info 的句柄以检索堆栈帧。

分析概述

分析接口

分析枚举

分析结构