Sdílet prostřednictvím


Události Trasování událostí pro Windows fondu vláken

Tyto události shromažďují informace o pracovních podprocesech a vstupně-výstupních podprocesech.

Existují dvě skupiny událostí fondu vláken:

Události fondu pracovních vláken

Tyto události se vztahují k fondu pracovních vláken modulu runtime a poskytují oznámení o událostech vlákna (například při vytvoření nebo zastavení vlákna). Fond pracovních vláken používá adaptivní algoritmus pro řízení souběžnosti, kde se počet vláken počítá na základě naměřené propustnosti. Události fondu pracovních vláken lze použít k pochopení toho, jak aplikace fond vláken používá, a vlivu, který mohou mít určité úlohy na řízení souběžnosti.

ThreadPoolWorkerThreadStart a ThreadPoolWorkerThreadStop

Následující tabulka uvádí klíčové slovo a úroveň těchto událostí. (Další informace najdete v tématu Klíčová slova a úrovně Trasování událostí pro Windows CLR.)

Klíčové slovo pro vyvolání události Level
ThreadingKeyword (0x10000) Informační (4)

Následující tabulka obsahuje informace o události.

Událost ID události Vyvolá se při
ThreadPoolWorkerThreadStart 50 Vytvoří se pracovní vlákno.
ThreadPoolWorkerThreadStop 51 Pracovní vlákno je zastaveno.
ThreadPoolWorkerThreadRetirementStart 52 Pracovní vlákno je vyřazeno.
ThreadPoolWorkerThreadRetirementStop 53 Vyřazené pracovní vlákno se znovu aktivuje.

Následující tabulka obsahuje data události.

Název pole Datový typ Popis
ActiveWorkerThreadCount win:UInt32 Počet pracovních vláken dostupných pro zpracování práce, včetně těch, která již zpracovávají práci
RetiredWorkerThreadCount win:UInt32 Počet pracovních vláken, která nejsou k dispozici pro zpracování práce, ale jsou uložena v rezervě pro případ, že budou později potřeba další vlákna.
CLrInstanceID Win:UInt16 Jedinečné ID instance CLR nebo CoreCLR.

ThreadPoolWorkerThreadAdjustment

Tyto události fondu vláken poskytují informace pro pochopení a ladění chování algoritmu injektáže vlákna (řízení souběžnosti). Informace jsou interně používány fondem pracovních vláken.

ThreadPoolWorkerThreadAdjustmentSample

Následující tabulka uvádí klíčové slovo a úroveň.

Klíčové slovo pro vyvolání události Level
ThreadingKeyword (0x10000) Informační (4)

Následující tabulka obsahuje informace o události.

Událost ID události Description
ThreadPoolWorkerThreadAdjustmentSample 54 Odkazuje na kolekci informací pro jeden vzorek; to znamená měření propustnosti s určitou úrovní souběžnosti v časovém okamžiku.

Následující tabulka obsahuje data události.

Název pole Datový typ Popis
Propustnost win:Double Počet dokončení za jednotku času
CLrInstanceID Win:UInt16 Jedinečné ID instance CLR nebo CoreCLR.

ThreadPoolWorkerThreadAdjustmentAdjustment

Následující tabulka uvádí klíčové slovo a úroveň.

Klíčové slovo pro vyvolání události Level
ThreadingKeyword (0x10000) Informační (4)

Následující tabulka obsahuje informace o události.

Událost ID události Description
ThreadPoolWorkerThreadAdjustmentAdjustment 55 Zaznamenává změnu řízení, když algoritmus injektáže vlákna (hill-climbing) zjistí, že je na místě změna úrovně souběžnosti.

Následující tabulka obsahuje data události.

Název pole Datový typ Popis
AverageThroughput win:Double Průměrná propustnost vzorku měření
NewWorkerThreadCount win:UInt32 Nový počet aktivních pracovních vláken.
Důvod win:UInt32 Důvod pro úpravu.

0x00 - Rozcvička.

0x01 – inicializace.

0x02 – náhodný přesun.

0x03 - Horolezectví.

0x04 – bod změny.

0x05 - Stabilizační.

0x06 hladovění.

0x07 – Vypršel časový limit vlákna.
CLrInstanceID Win:UInt16 Jedinečné ID instance CLR nebo CoreCLR.

ThreadPoolWorkerThreadAdjustmentStats

Následující tabulka uvádí klíčové slovo a úroveň.

Klíčové slovo pro vyvolání události Level
ThreadingKeyword (0x10000) Informační (4)

Následující tabulka obsahuje informace o události.

Událost ID události Description
ThreadPoolWorkerThreadAdjustmentStats 56 Shromáždí data ve fondu vláken.

Následující tabulka obsahuje data události.

Název pole Datový typ Description
Doba trvání win:Double Doba v sekundách, během které byly tyto statistiky shromažďovány.
Propustnost win:Double Průměrný počet dokončení za sekundu během tohoto intervalu
ThreadWave win:Double Vyhrazeno pro interní použití.
PropustnostWave win:Double Vyhrazeno pro interní použití.
PropustnostErrorEstimate win:Double Vyhrazeno pro interní použití.
AverageThroughputErrorEstimate win:Double Vyhrazeno pro interní použití.
Propustnost –ratio win:Double Relativní zlepšení propustnosti způsobené změnami počtu aktivních pracovních vláken během tohoto intervalu.
Spolehlivost win:Double Míra platnosti pole ThroughputRatio.
Nové nastavenícontrolu win:Double Počet aktivních pracovních vláken, která budou sloužit jako směrný plán pro budoucí variace počtu aktivních vláken.
NewThreadWaveMagnitude Win:UInt16 Velikost budoucích variací v počtu aktivních vláken.
CLrInstanceID Win:UInt16 Jedinečné ID instance CLR nebo CoreCLR.

Události vlákna vstupně-výstupních operací

K těmto událostem fondu vláken dochází u vláken ve fondu vstupně-výstupních vláken (porty pro dokončení), který je asynchronní.

IOThreadCreate_V1

Následující tabulka uvádí klíčové slovo a úroveň.

Klíčové slovo pro vyvolání události Level
ThreadingKeyword (0x10000) Informační (4)

Následující tabulka obsahuje informace o události.

Událost ID události Vyvolá se při
IOThreadCreate_V1 44 Ve fondu vláken se vytvoří vstupně-výstupní vlákno.

Následující tabulka obsahuje data události.

Název pole Datový typ Popis
Počet win:UInt64 Počet vstupně-výstupních vláken, včetně nově vytvořeného vlákna
NumRetired win:UInt64 Počet vyřazených pracovních vláken
CLrInstanceID Win:UInt16 Jedinečné ID instance CLR nebo CoreCLR.

IOThreadRetire_V1

Následující tabulka uvádí klíčové slovo a úroveň.

Klíčové slovo pro vyvolání události Level
ThreadingKeyword (0x10000) Informační (4)

Následující tabulka obsahuje informace o události.

Událost ID události Vyvolá se při
IOThreadRetire_V1 46 Vstupně-výstupní vlákno se stane kandidátem na vyřazení.

Následující tabulka obsahuje data události.

Název pole Datový typ Popis
Počet win:UInt64 Počet vstupně-výstupních vláken zbývajících ve fondu vláken
NumRetired win:UInt64 Počet vyřazených vstupně-výstupních vláken
CLrInstanceID Win:UInt16 Jedinečné ID instance CLR nebo CoreCLR.

IOThreadUnretire_V1

Následující tabulka uvádí klíčové slovo a úroveň.

Klíčové slovo pro vyvolání události Level
ThreadingKeyword (0x10000) Informační (4)

Následující tabulka obsahuje informace o události.

Událost ID události Vyvolá se při
IOThreadUnretire_V1 47 Vstupně-výstupní vlákno se zruší kvůli vstupně-výstupním operacím, které dorazí během čekací doby poté, co se vlákno stane kandidátem na vyřazení.

Následující tabulka obsahuje data události.

Název pole Datový typ Popis
Počet win:UInt64 Počet vstupně-výstupních vláken ve fondu vláken, včetně tohoto.
NumRetired win:UInt64 Počet vyřazených vstupně-výstupních vláken
CLrInstanceID Win:UInt16 Jedinečné ID instance CLR nebo CoreCLR.

IOThreadTerminate

Následující tabulka uvádí klíčové slovo a úroveň.

Klíčové slovo pro vyvolání události Level
ThreadingKeyword (0x10000) Informační (4)

Následující tabulka obsahuje informace o události.

Událost ID události Vyvolá se při
IOThreadTerminate 45 Vstupně-výstupní vlákno je ukončeno ve fondu vláken.

Následující tabulka obsahuje data události.

Název pole Datový typ Popis
Počet win:UInt64 Počet vstupně-výstupních vláken zbývajících ve fondu vláken
NumRetired win:UInt64 Počet vyřazených vstupně-výstupních vláken
CLrInstanceID Win:UInt16 Jedinečné ID instance CLR nebo CoreCLR.

Viz také