Eventos ETW do Conjunto de Threads
Estes eventos recolhem informações sobre threads de trabalho e de E/S.
Existem dois grupos de eventos do conjunto de threads:
Eventos do conjunto de threads de trabalho, que fornecem informações sobre como uma aplicação utiliza o conjunto de threads e o efeito das cargas de trabalho no controlo de simultaneidade.
Eventos do conjunto de threads de E/S, que fornecem informações sobre threads de E/S criados, descontinuados, não registados ou terminados no conjunto de threads.
Eventos do Conjunto de Threads de Trabalho
Estes eventos estão relacionados com o conjunto de threads de trabalho do runtime e fornecem notificações para eventos de thread (por exemplo, quando um thread é criado ou parado). O conjunto de threads de trabalho utiliza um algoritmo adaptável para o controlo de simultaneidade, em que o número de threads é calculado com base no débito medido. Os eventos do conjunto de threads de trabalho podem ser utilizados para compreender como uma aplicação está a utilizar o conjunto de threads e o efeito que determinadas cargas de trabalho podem ter no controlo de simultaneidade.
ThreadPoolWorkerThreadStart e ThreadPoolWorkerThreadStop
A tabela seguinte mostra a palavra-chave e o nível para estes eventos. (Para obter mais informações, consulte Palavras-chave e Níveis do CLR ETW.)
Palavra-chave para criar o evento | Level |
---|---|
ThreadingKeyword (0x10000) |
Informativo (4) |
A tabela seguinte mostra as informações do evento.
Evento | ID do Evento | Gerado quando |
---|---|---|
ThreadPoolWorkerThreadStart |
50 | É criado um thread de trabalho. |
ThreadPoolWorkerThreadStop |
51 | Um thread de trabalho é parado. |
ThreadPoolWorkerThreadRetirementStart |
52 | Um thread de trabalho é extingue-se. |
ThreadPoolWorkerThreadRetirementStop |
53 | Um thread de trabalho descontinuado volta a estar ativo. |
A tabela seguinte mostra os dados do evento.
Nome do campo | Tipo de dados | Descrição |
---|---|---|
ActiveWorkerThreadCount | win:UInt32 | Número de threads de trabalho disponíveis para processar trabalho, incluindo os que já estão a processar trabalho. |
RetiredWorkerThreadCount | win:UInt32 | Número de threads de trabalho que não estão disponíveis para processar trabalho, mas que estão a ser mantidos em reserva caso sejam necessários mais threads mais tarde. |
ClrInstanceID | Win:UInt16 | ID exclusivo para a instância de CLR ou CoreCLR. |
ThreadPoolWorkerThreadAdjustment
Estes eventos do conjunto de threads fornecem informações para compreender e depurar o comportamento do algoritmo de injeção de threads (controlo de simultaneidade). As informações são utilizadas internamente pelo conjunto de threads de trabalho.
ThreadPoolWorkerThreadAdjustmentSample
A tabela seguinte mostra a palavra-chave e o nível.
Palavra-chave para criar o evento | Level |
---|---|
ThreadingKeyword (0x10000) |
Informativo (4) |
A tabela seguinte mostra as informações do evento.
Evento | ID do Evento | Description |
---|---|---|
ThreadPoolWorkerThreadAdjustmentSample |
54 | Refere-se à coleção de informações de um exemplo; ou seja, uma medição do débito com um determinado nível de simultaneidade, num instante. |
A tabela seguinte mostra os dados do evento.
Nome do campo | Tipo de dados | Descrição |
---|---|---|
Débito | win:Double | Número de conclusões por unidade de tempo. |
ClrInstanceID | Win:UInt16 | ID exclusivo para a instância de CLR ou CoreCLR. |
ThreadPoolWorkerThreadAdjustmentAdjustment
A tabela seguinte mostra a palavra-chave e o nível.
Palavra-chave para criar o evento | Level |
---|---|
ThreadingKeyword (0x10000) |
Informativo (4) |
A tabela seguinte mostra as informações do evento.
Evento | ID do Evento | Description |
---|---|---|
ThreadPoolWorkerThreadAdjustmentAdjustment |
55 | Regista uma alteração no controlo, quando o algoritmo de injeção de threads (escalamento em colinas) determina que existe uma alteração no nível de simultaneidade. |
A tabela seguinte mostra os dados do evento.
Nome do campo | Tipo de dados | Descrição |
---|---|---|
AverageThroughput | win:Double | Débito médio de uma amostra de medidas. |
NewWorkerThreadCount | win:UInt32 | Novo número de threads de trabalho ativos. |
Razão | win:UInt32 | Motivo do ajuste. 0x00 - Aquecimento. 0x01 - Inicialização. 0x02 - Movimentação aleatória. 0x03 - Movimento de escalada. 0x04 - Ponto de alteração. 0x05 - Estabilização. 0x06 - Fome. 0x07 - O tempo limite do thread foi excedido. |
ClrInstanceID | Win:UInt16 | ID exclusivo para a instância de CLR ou CoreCLR. |
ThreadPoolWorkerThreadAdjustmentStats
A tabela seguinte mostra a palavra-chave e o nível.
Palavra-chave para criar o evento | Level |
---|---|
ThreadingKeyword (0x10000) |
Informativo (4) |
A tabela seguinte mostra as informações do evento.
Evento | ID do Evento | Description |
---|---|---|
ThreadPoolWorkerThreadAdjustmentStats |
56 | Recolhe dados no conjunto de threads. |
A tabela seguinte mostra os dados do evento.
Nome do campo | Tipo de dados | Description |
---|---|---|
Duração | win:Double | Período de tempo, em segundos, durante o qual estas estatísticas foram recolhidas. |
Débito | win:Double | Número médio de conclusões por segundo durante este intervalo. |
ThreadWave | win:Double | Reservado para utilização interna. |
ThroughputWave | win:Double | Reservado para utilização interna. |
ThroughputErrorEstimate | win:Double | Reservado para utilização interna. |
AverageThroughputErrorEstimate | win:Double | Reservado para utilização interna. |
ThroughputRatio | win:Double | A melhoria relativa no débito causada por variações na contagem de threads de trabalho ativo durante este intervalo. |
Confiança | win:Double | Uma medida da validade do campo ThroughputRatio. |
NewcontrolSetting | win:Double | O número de threads de trabalho ativos que servirão de linha de base para futuras variações na contagem de threads ativos. |
NewThreadWaveMagnitude | Win:UInt16 | A magnitude das variações futuras na contagem de threads ativos. |
ClrInstanceID | Win:UInt16 | ID exclusivo para a instância de CLR ou CoreCLR. |
Eventos de Thread de E/S
Estes eventos do conjunto de threads ocorrem para threads no conjunto de threads de E/S (portas de conclusão), o que é assíncrono.
IOThreadCreate_V1
A tabela seguinte mostra a palavra-chave e o nível.
Palavra-chave para criar o evento | Level |
---|---|
ThreadingKeyword (0x10000) |
Informativo (4) |
A tabela seguinte mostra as informações do evento.
Evento | ID do Evento | Gerado quando |
---|---|---|
IOThreadCreate_V1 |
44 | É criado um thread de E/S no conjunto de threads. |
A tabela seguinte mostra os dados do evento.
Nome do campo | Tipo de dados | Descrição |
---|---|---|
de palavras | win:UInt64 | Número de threads de E/S, incluindo o thread criado recentemente. |
NumRetired | win:UInt64 | Número de threads de trabalho descontinuados. |
ClrInstanceID | Win:UInt16 | ID exclusivo para a instância de CLR ou CoreCLR. |
IOThreadRetire_V1
A tabela seguinte mostra a palavra-chave e o nível.
Palavra-chave para criar o evento | Level |
---|---|
ThreadingKeyword (0x10000) |
Informativo (4) |
A tabela seguinte mostra as informações do evento.
Evento | ID do Evento | Gerado quando |
---|---|---|
IOThreadRetire_V1 |
46 | Um tópico de E/S torna-se um candidato à reforma. |
A tabela seguinte mostra os dados do evento.
Nome do campo | Tipo de dados | Descrição |
---|---|---|
de palavras | win:UInt64 | Número de threads de E/S restantes no conjunto de threads. |
NumRetired | win:UInt64 | Número de threads de E/S descontinuados. |
ClrInstanceID | Win:UInt16 | ID exclusivo para a instância de CLR ou CoreCLR. |
IOThreadUnretire_V1
A tabela seguinte mostra a palavra-chave e o nível.
Palavra-chave para criar o evento | Level |
---|---|
ThreadingKeyword (0x10000) |
Informativo (4) |
A tabela seguinte mostra as informações do evento.
Evento | ID do Evento | Gerado quando |
---|---|---|
IOThreadUnretire_V1 |
47 | Um thread de E/S não é reativado devido à E/S que chega dentro de um período de espera após o thread se tornar um candidato à reforma. |
A tabela seguinte mostra os dados do evento.
Nome do campo | Tipo de dados | Descrição |
---|---|---|
de palavras | win:UInt64 | Número de threads de E/S no conjunto de threads, incluindo este. |
NumRetired | win:UInt64 | Número de threads de E/S descontinuados. |
ClrInstanceID | Win:UInt16 | ID exclusivo para a instância de CLR ou CoreCLR. |
IOThreadTerminate
A tabela seguinte mostra a palavra-chave e o nível.
Palavra-chave para criar o evento | Level |
---|---|
ThreadingKeyword (0x10000) |
Informativo (4) |
A tabela seguinte mostra as informações do evento.
Evento | ID do Evento | Gerado quando |
---|---|---|
IOThreadTerminate |
45 | Um thread de E/S é terminado no conjunto de threads. |
A tabela seguinte mostra os dados do evento.
Nome do campo | Tipo de dados | Descrição |
---|---|---|
de palavras | win:UInt64 | Número de threads de E/S restantes no conjunto de threads. |
NumRetired | win:UInt64 | Número de threads de E/S descontinuados. |
ClrInstanceID | Win:UInt16 | ID exclusivo para a instância de CLR ou CoreCLR. |