Dela via


ETW-händelser för trådpool

Dessa händelser samlar in information om arbetar- och I/O-trådar.

Det finns två grupper med trådpoolshändelser:

  • Händelser i arbetstrådspoolen, som ger information om hur ett program använder trådpoolen och effekten av arbetsbelastningar på samtidighetskontroll.

  • I/O-trådpoolshändelser som ger information om I/O-trådar som skapas, dras tillbaka, inte efterlyssas eller avslutas i trådpoolen.

Arbetstrådspoolhändelser

Dessa händelser relaterar till körningens arbetstrådspool och ger meddelanden om trådhändelser (till exempel när en tråd skapas eller stoppas). Arbetstrådspoolen använder en anpassningsbar algoritm för samtidighetskontroll, där antalet trådar beräknas baserat på det uppmätta dataflödet. Händelser i arbetstrådspoolen kan användas för att förstå hur ett program använder trådpoolen och vilken effekt vissa arbetsbelastningar kan ha på samtidighetskontroll.

ThreadPoolWorkerThreadStart och ThreadPoolWorkerThreadStop

I följande tabell visas nyckelordet och nivån för dessa händelser. (Mer information finns i CLR ETW-nyckelord och -nivåer.)

Nyckelord för att höja händelsen Nivå
ThreadingKeyword (0x10000) Information (4)

I följande tabell visas händelseinformationen.

Händelse Händelse-ID Upphöjt när
ThreadPoolWorkerThreadStart 50 En arbetstråd skapas.
ThreadPoolWorkerThreadStop 51 En arbetstråd stoppas.
ThreadPoolWorkerThreadRetirementStart 52 En arbetstråd dras tillbaka.
ThreadPoolWorkerThreadRetirementStop 53 En tillbakadragen arbetstråd blir aktiv igen.

I följande tabell visas händelsedata.

Fältnamn Datatyp Beskrivning
ActiveWorkerThreadCount win:UInt32 Antal arbetstrådar som är tillgängliga för att bearbeta arbete, inklusive de som redan bearbetar arbete.
RetiredWorkerThreadCount win:UInt32 Antal arbetstrådar som inte är tillgängliga för att bearbeta arbete, men som lagras i reserv om fler trådar behövs senare.
ClrInstanceID Win:UInt16 Unikt ID för instansen av CLR eller CoreCLR.

ThreadPoolWorkerThreadAdjustment

Dessa trådpoolshändelser ger information för att förstå och felsöka beteendet för trådinmatningsalgoritmen (samtidighetskontroll). Informationen används internt av arbetstrådspoolen.

ThreadPoolWorkerThreadAdjustmentSample

I följande tabell visas nyckelordet och nivån.

Nyckelord för att höja händelsen Nivå
ThreadingKeyword (0x10000) Information (4)

I följande tabell visas händelseinformationen.

Händelse Händelse-ID Description
ThreadPoolWorkerThreadAdjustmentSample 54 Refererar till insamling av information för ett exempel. det vill: ett mått på dataflöde med en viss samtidighetsnivå, på en omedelbar tid.

I följande tabell visas händelsedata.

Fältnamn Datatyp Beskrivning
Dataflöde win:Double Antal slutföranden per tidsenhet.
ClrInstanceID Win:UInt16 Unikt ID för instansen av CLR eller CoreCLR.

ThreadPoolWorkerThreadAdjustmentAdjustment

I följande tabell visas nyckelordet och nivån.

Nyckelord för att höja händelsen Nivå
ThreadingKeyword (0x10000) Information (4)

I följande tabell visas händelseinformationen.

Händelse Händelse-ID Description
ThreadPoolWorkerThreadAdjustmentAdjustment 55 Registrerar en ändring av kontrollen, när trådinmatningsalgoritmen (hill-climbing) avgör att en ändring i samtidighetsnivån är på plats.

I följande tabell visas händelsedata.

Fältnamn Datatyp Beskrivning
AverageThroughput win:Double Genomsnittligt dataflöde för ett urval av mått.
NewWorkerThreadCount win:UInt32 Nytt antal aktiva arbetstrådar.
Anledning win:UInt32 Orsak till justeringen.

0x00 – Uppvärmning.

0x01 – Initierar.

0x02 – Slumpmässigt drag.

0x03 - Klättring flytta.

0x04 – Ändringspunkt.

0x05 – Stabilisera.

0x06 - Svält.

0x07 – Tidsgränsen för tråden överst.
ClrInstanceID Win:UInt16 Unikt ID för instansen av CLR eller CoreCLR.

ThreadPoolWorkerThreadAdjustmentStats

I följande tabell visas nyckelordet och nivån.

Nyckelord för att höja händelsen Nivå
ThreadingKeyword (0x10000) Information (4)

I följande tabell visas händelseinformationen.

Händelse Händelse-ID Description
ThreadPoolWorkerThreadAdjustmentStats 56 Samlar in data i trådpoolen.

I följande tabell visas händelsedata.

Fältnamn Datatyp Description
Varaktighet win:Double Tid, i sekunder, under vilken den här statistiken samlades in.
Dataflöde win:Double Genomsnittligt antal slutföranden per sekund under det här intervallet.
ThreadWave win:Double Reserverad för internt bruk.
DataflödeWave win:Double Reserverad för internt bruk.
ThroughputErrorEstimate win:Double Reserverad för internt bruk.
AverageThroughputErrorEstimate win:Double Reserverad för internt bruk.
DataflödeRatio win:Double Den relativa förbättringen av dataflödet som orsakas av variationer i antalet aktiva arbetstrådar under det här intervallet.
Konfidensbedömning win:Double Ett mått på giltigheten för fältet ThroughputRatio.
NewcontrolSetting win:Double Antalet aktiva arbetstrådar som ska fungera som baslinje för framtida variationer i antalet aktiva trådar.
NewThreadWaveMagnitude Win:UInt16 Omfattningen av framtida variationer i antalet aktiva trådar.
ClrInstanceID Win:UInt16 Unikt ID för instansen av CLR eller CoreCLR.

I/O-trådhändelser

Dessa trådpoolshändelser inträffar för trådar i I/O-trådpoolen (slutförandeportar), vilket är asynkront.

IOThreadCreate_V1

I följande tabell visas nyckelordet och nivån.

Nyckelord för att höja händelsen Nivå
ThreadingKeyword (0x10000) Information (4)

I följande tabell visas händelseinformationen.

Händelse Händelse-ID Upphöjt när
IOThreadCreate_V1 44 En I/O-tråd skapas i trådpoolen.

I följande tabell visas händelsedata.

Fältnamn Datatyp Beskrivning
Antal win:UInt64 Antal I/O-trådar, inklusive den nya tråden.
NumRetired win:UInt64 Antal borttagna arbetstrådar.
ClrInstanceID Win:UInt16 Unikt ID för instansen av CLR eller CoreCLR.

IOThreadRetire_V1

I följande tabell visas nyckelordet och nivån.

Nyckelord för att höja händelsen Nivå
ThreadingKeyword (0x10000) Information (4)

I följande tabell visas händelseinformationen.

Händelse Händelse-ID Upphöjt när
IOThreadRetire_V1 46 En I/O-tråd blir en pensionskandidat.

I följande tabell visas händelsedata.

Fältnamn Datatyp Beskrivning
Antal win:UInt64 Antal I/O-trådar som finns kvar i trådpoolen.
NumRetired win:UInt64 Antal borttagna I/O-trådar.
ClrInstanceID Win:UInt16 Unikt ID för instansen av CLR eller CoreCLR.

IOThreadUnretire_V1

I följande tabell visas nyckelordet och nivån.

Nyckelord för att höja händelsen Nivå
ThreadingKeyword (0x10000) Information (4)

I följande tabell visas händelseinformationen.

Händelse Händelse-ID Upphöjt när
IOThreadUnretire_V1 47 En I/O-tråd saknas på grund av I/O som kommer inom en väntetid efter att tråden blir en pensionskandidat.

I följande tabell visas händelsedata.

Fältnamn Datatyp Beskrivning
Antal win:UInt64 Antal I/O-trådar i trådpoolen, inklusive den här.
NumRetired win:UInt64 Antal borttagna I/O-trådar.
ClrInstanceID Win:UInt16 Unikt ID för instansen av CLR eller CoreCLR.

IOThreadTerminate

I följande tabell visas nyckelordet och nivån.

Nyckelord för att höja händelsen Nivå
ThreadingKeyword (0x10000) Information (4)

I följande tabell visas händelseinformationen.

Händelse Händelse-ID Upphöjt när
IOThreadTerminate 45 En I/O-tråd avslutas i trådpoolen.

I följande tabell visas händelsedata.

Fältnamn Datatyp Beskrivning
Antal win:UInt64 Antal I/O-trådar som finns kvar i trådpoolen.
NumRetired win:UInt64 Antal borttagna I/O-trådar.
ClrInstanceID Win:UInt16 Unikt ID för instansen av CLR eller CoreCLR.

Se även