Partilhar via


Eventos de contenção do runtime do .NET

Estes eventos de runtime capturam informações sobre as disputas de bloqueio de monitorização, como com Monitor.Enter ou a palavra-chave de bloqueio C#. Para obter mais informações sobre como utilizar estes eventos para fins de diagnóstico, veja Registar e rastrear aplicações .NET

ContentionStart_V2 evento

Este evento é emitido no início de uma disputa de bloqueio do monitor.

Palavra-chave para criar o evento Level
ContentionKeyword (0x4000) Informativo (4)

A tabela seguinte mostra as informações do evento.

Evento ID do Evento Gerado quando
ContentionStart_V2 81 É iniciada uma disputa de bloqueio do monitor.
Nome do campo Tipo de dados Descrição
Flags win:UInt8 0 para gerido; 1 para nativo.
ClrInstanceID win:UInt16 ID exclusivo para a instância do CoreCLR.
LockObjectID win:Pointer Endereço do objeto de bloqueio.
LockOwnerThreadID win:Pointer Endereço do thread que é o proprietário do bloqueio.

ContentionStop_V1 evento

Este evento é emitido no final de uma disputa de bloqueio do monitor.

Palavra-chave para criar o evento Level
ContentionKeyword (0x4000) Informativo (4)

A tabela seguinte mostra as informações do evento.

Evento ID do Evento Gerado quando
ContentionStop_V1 91 Termina uma contenção de bloqueio do monitor.
Nome do campo Tipo de dados Descrição
Flags win:UInt8 0 para gerido; 1 para nativo.
ClrInstanceID win:UInt16 ID exclusivo para a instância do CoreCLR.
DurationNs win:Double Duração da contenção em nanossegundos.