互操作 ETW 事件

互操作事件可捕获有关 Microsoft 中间语言 (MSIL) 存根生成和缓存的信息。

此类别由以下事件组成:

  • ILStubGenerated 事件

  • ILStubCacheHit 事件

ILStubGenerated 事件

下表显示关键字和级别。 (有关更多信息,请参见 CLR ETW 关键字和级别。)

用于引发事件的关键字

级别

InteropKeyword (0x2000)

信息性 (4)

下表显示事件信息。

Event

事件 ID

在以下情况下引发

ILStubGenerated

88

已生成 MSIL 存根。

下表显示事件数据。

字段名

数据类型

说明

ModuleID

win:UInt16

模块标识符。

StubMethodID

win:UInt64

存根方法标识符。

StubFlags

win:UInt64

存根的标志:

0x1 - 反向互操作。

0x2 - COM 互操作。

0x4 - NGen.exe 生成的存根。

0x8 - 委托。

0x10 - 可变参数。

0x20 - 非托管被调用方。

ManagedInteropMethodToken

win:UInt32

托管互操作方法的标记。

ManagedInteropMethodNameSpace

win:UnicodeString

托管互操作方法的命名空间。

ManagedInteropMethodName

win:UnicodeString

托管互操作方法的名称。

ManagedInteropMethodSignature

win:UnicodeString

托管互操作方法的签名。

NativeMethodSignature

win:UnicodeString

本机方法签名。

StubMethodSignature

win:UnicodeString

存根方法签名。

StubMethodILCode

win:UnicodeString

存根方法的 MSIL 代码。

ClrInstanceID

win:UInt16

CLR 或 CoreCLR 的实例的唯一 ID。

返回页首

ILStubCacheHit 事件

下表显示关键字和级别。

用于引发事件的关键字

级别

InteropKeyword (0x2000)

信息性 (4)

下表显示事件信息。

Event

事件 ID

在以下情况下引发

ILStubCacheHit

89

已访问 MSIL 缓存。

下表显示事件数据。

字段名

数据类型

说明

ModuleID

win:UInt16

模块标识符。

StubMethodID

win:UInt64

存根方法标识符。

ManagedInteropMethodToken

win:UInt32

托管互操作方法的标记。

ManagedInteropMethodNameSpace

win:UnicodeString

托管互操作方法的命名空间。

ManagedInteropMethodName

win:UnicodeString

托管互操作方法的名称。

ManagedInteropMethodSignature

win:UnicodeString

托管互操作方法的签名。

ClrInstanceID

win:UInt16

CLR 或 CoreCLR 的实例的唯一 ID。

返回页首

请参见

概念

CLR ETW 事件