共用方式為


JIT 追蹤 ETW 事件

這些事件會收集與 Just-In-Time (JIT) 內嵌和 JIT tail 呼叫的成敗有關的資訊。

JIT 追蹤事件包含下列兩個分類:

  • JIT 內嵌事件

  • JIT Tail 呼叫事件

JIT 內嵌事件

MethodJitInliningFailed 事件

下表顯示關鍵字和層級。 如需詳細資訊,請參閱 CLR ETW 關鍵字和層級

引發事件的關鍵字

層級

JITTracingKeyword (0x10)

詳細資訊 (5)

下表顯示事件資訊。

事件

事件識別碼

引發時機

MethodJitInliningFailed

186

JIT 內嵌失敗。

下表顯示事件資料。

欄位名稱

資料型別

說明

MethodBeingCompiledNameSpace

win:UnicodeString

所編譯之方法的命名空間。

MethodBeingCompiledName

win:UnicodeString

所編譯之方法的名稱。

MethodBeingCompiledNameSignature

win:UnicodeString

所編譯之方法的簽章。

InlinerNamespace

win:UnicodeString

JIT 編譯器正嘗試為其產生程式碼之方法的命名空間。

InlinerName

win:UnicodeString

編譯器正嘗試為其產生程式碼之方法的名稱。 如果編譯器正嘗試將程式碼內嵌在 MethodBeingCompiledName 中,而非產生 InlinerName 的呼叫,這個名稱可能就與 MethodBeingCompiledName 不同。

InlinerNameSignature

win:UnicodeString

內嵌者的簽章。

InlineeNamespace

win:UnicodeString

被內嵌者的命名空間。

InlineeName

win:UnicodeString

編譯器正嘗試內嵌 (而非產生呼叫) 的方法。

InlineeNameSignature

win:UnicodeString

被內嵌者的簽章。

FailAlways

win:Boolean

給 JIT 編譯器的提示,表示被內嵌者的內嵌一定會失敗。

FailReason

win:UnicodeString

INLINE_NEVER 表示先前的內嵌嘗試判斷出內嵌由於某些其他原因而絕對不會成功,否則為自由格式的文字。

ClrInstanceID

win:UnicodeString

CLR 或 CoreCLR 執行個體的唯一 ID。

MethodJitInliningSucceeded 事件

下表顯示關鍵字和層級。

引發事件的關鍵字

層級

JITTracingKeyword (0x10)

詳細資訊 (5)

下表顯示事件資訊。

事件

事件識別碼

引發時機

MethodJitInliningSucceeded

185

方法內嵌成功。

下表顯示事件資料。

欄位名稱

資料型別

說明

MethodBeingCompiledNameSpace

win:UnicodeString

所編譯之方法的命名空間。

MethodBeingCompiledName

win:UnicodeString

所編譯之方法的名稱。

MethodBeingCompiledNameSignature

win:UnicodeString

所編譯之方法的簽章。

InlinerNamespace

win:UnicodeString

JIT 編譯器正嘗試為其產生程式碼之方法的命名空間。

InlinerName

win:UnicodeString

編譯器正嘗試為其產生程式碼之方法的名稱。 如果編譯器正嘗試將程式碼內嵌在 MethodBeingCompiledName 中,而非產生 InlinerName 的呼叫,這個名稱可能就與 MethodBeingCompiledName 不同。

InlinerNameSignature

win:UnicodeString

內嵌者的簽章。

InlineeNamespace

win:UnicodeString

被內嵌者的命名空間。

InlineeName

win:UnicodeString

編譯器正嘗試內嵌 (而非產生呼叫) 的方法。

InlineeNameSignature

win:UnicodeString

被內嵌者的簽章。

ClrInstanceID

win:UInt16

CLR 或 CoreCLR 執行個體的唯一 ID。

回到頁首

JIT Tail 呼叫事件

MethodJITTailCallFailed 事件

下表顯示關鍵字和層級。

引發事件的關鍵字

層級

JITTracingKeyword (0x10)

詳細資訊 (5)

下表顯示事件資訊。

事件

事件識別碼

引發時機

MethodJitTailCallFailed

189

方法 tail 呼叫失敗。

下表顯示事件資料。

欄位名稱

資料型別

說明

MethodBeingCompiledNameSpace

win:UnicodeString

所編譯之方法的命名空間。

MethodBeingCompiledName

win:UnicodeString

所編譯之方法的名稱。

MethodBeingCompiledNameSignature

win:UnicodeString

所編譯之方法的簽章。

CallerNamespace

win:UnicodeString

JIT 編譯器正嘗試為其產生程式碼之方法的命名空間。

CallerName

win:UnicodeString

編譯器正嘗試為其產生程式碼之方法的名稱。

CallerNameSignature

win:UnicodeString

呼叫端的簽章。

CalleeNamespace

win:UnicodeString

被呼叫端的命名空間。

CalleeName

win:UnicodeString

編譯器正嘗試 tail 呼叫 (而非產生呼叫) 的方法。

CalleeNameSignature

win:UnicodeString

被呼叫端的簽章。

TailPrefix

win:Boolean

tail 呼叫的前置詞。

FailReason

win:UnicodeString

tail 呼叫失敗的原因。

ClrInstanceID

win:UInt16

CLR 或 CoreCLR 執行個體的唯一 ID。

MethodJITTailCallSucceeded 事件

下表顯示關鍵字和層級。

引發事件的關鍵字

層級

JITTracingKeyword (0x10)

詳細資訊 (5)

下表顯示事件資訊。

事件

事件識別碼

引發時機

MethodJitTailCallSucceeded

188

方法 tail 呼叫成功。

下表顯示事件資料。

欄位名稱

資料型別

說明

MethodBeingCompiledNameSpace

win:UnicodeString

所編譯之方法的命名空間。

MethodBeingCompiledName

win:UnicodeString

所編譯之方法的名稱。

MethodBeingCompiledNameSignature

win:UnicodeString

所編譯之方法的簽章。

CallerNamespace

win:UnicodeString

JIT 編譯器正嘗試為其產生程式碼之方法的命名空間。

CallerName

win:UnicodeString

編譯器正嘗試為其產生程式碼之方法的名稱。

CallerNameSignature

win:UnicodeString

呼叫端的簽章。

CalleeNamespace

win:UnicodeString

被呼叫端的命名空間。

CalleeName

win:UnicodeString

編譯器正嘗試 tail 呼叫 (而非產生呼叫) 的方法。

CalleeNameSignature

win:UnicodeString

被呼叫端的簽章。

TailPrefix

win:Boolean

tail 呼叫的前置詞。

TailCallType

win:UnicodeString

tail 呼叫的型別。

ClrInstanceID

win:UInt16

CLR 或 CoreCLR 執行個體的唯一 ID。

回到頁首

請參閱

概念

CLR ETW 事件