.NET 執行時間爭用事件
這些運行時間事件會擷取監視鎖定競爭的相關資訊,例如 使用 Monitor.Enter
或 C# lock 關鍵字。 如需如何針對診斷用途使用這些事件的詳細資訊,請參閱 記錄和追蹤 .NET 應用程式
ContentionStart_V2事件
此事件會在監視鎖定競爭開始時發出。
引發事件的關鍵字 |
層級 |
ContentionKeyword (0x4000) |
告知性 (4) |
下表顯示事件資訊。
事件 |
事件識別碼 |
引發的時機 |
ContentionStart_V2 |
81 |
監視器鎖定競爭隨即啟動。 |
欄位名稱 |
資料類型 |
描述 |
Flags |
win:UInt8 |
0 用於 Managed; 1 適用于原生。 |
ClrInstanceID |
win:UInt16 |
CoreCLR 執行個體的唯一識別碼。 |
LockObjectID |
win:Pointer |
鎖定物件的位址。 |
LockOwnerThreadID |
win:Pointer |
擁有鎖定的執行緒位址。 |
ContentionStop_V1 事件
此事件會在監視鎖定競爭結束時發出。
引發事件的關鍵字 |
層級 |
ContentionKeyword (0x4000) |
告知性 (4) |
下表顯示事件資訊。
事件 |
事件識別碼 |
引發的時機 |
ContentionStop_V1 |
91 |
監視器鎖定競爭結束。 |
欄位名稱 |
資料類型 |
描述 |
Flags |
win:UInt8 |
0 用於 Managed; 1 適用于原生。 |
ClrInstanceID |
win:UInt16 |
CoreCLR 執行個體的唯一識別碼。 |
DurationNs |
win:Double |
以奈秒為單位的爭用持續時間。 |