Peristiwa ETW Kumpulan Utas
Peristiwa ini mengumpulkan informasi tentang pekerja dan utas I/O.
Ada dua grup peristiwa kumpulan utas:
Peristiwa kumpulan utas pekerja, yang memberikan informasi tentang cara aplikasi menggunakan kumpulan utas, dan pengaruh beban kerja pada kontrol konkurensi.
Peristiwa kumpulan utas I/O, yang memberikan informasi tentang utas I/O yang dibuat, dihentikan, tidak dihentikan, atau dihentikan di kumpulan utas.
Peristiwa Pool Utas Pekerja
Peristiwa ini berhubungan dengan kumpulan utas pekerja runtime dan memberikan pemberitahuan untuk peristiwa utas (misalnya, ketika utas dibuat atau dihentikan). Kumpulan utas pekerja menggunakan algoritme adaptif untuk kontrol konkurensi, ketika jumlah utas dihitung berdasarkan throughput yang diukur. Peristiwa kumpulan utas pekerja dapat digunakan untuk memahami cara aplikasi menggunakan kumpulan utas, dan efek beban kerja tertentu pada kontrol konkurensi.
ThreadPoolWorkerThreadStart dan ThreadPoolWorkerThreadStop
Tabel berikut menunjukkan kata kunci dan level untuk peristiwa ini. (Untuk informasi selengkapnya, lihat Kata Kunci dan Tingkat ETW Runtime Bahasa Umum.)
Kata kunci untuk memunculkan peristiwa | Tingkat |
---|---|
ThreadingKeyword (0x10000) |
Informasi (4) |
Tabel berikut menunjukkan informasi peristiwa.
Kejadian | ID Peristiwa | Dimunculkan ketika |
---|---|---|
ThreadPoolWorkerThreadStart |
50 | Sebuah utas pekerja dibuat. |
ThreadPoolWorkerThreadStop |
51 | Sebuah utas pekerja dihentikan. |
ThreadPoolWorkerThreadRetirementStart |
52 | Sebuah utas pekerja berhenti. |
ThreadPoolWorkerThreadRetirementStop |
53 | Utas pekerja yang sudah dihentikan menjadi aktif kembali. |
Tabel berikut menunjukkan data peristiwa.
Nama bidang | Jenis data | Deskripsi |
---|---|---|
ActiveWorkerThreadCount | win:UInt32 | Jumlah utas pekerja yang tersedia untuk memproses pekerjaan, termasuk yang sudah memproses pekerjaan. |
RetiredWorkerThreadCount | win:UInt32 | Jumlah utas pekerja yang tidak tersedia untuk memproses pekerjaan, tetapi disimpan sebagai cadangan jika diperlukan lebih banyak utas nanti. |
ClrInstanceID | Win:UInt16 | ID unik untuk instans CLR atau CoreCLR. |
ThreadPoolWorkerThreadAdjustment
Peristiwa kumpulan utas ini memberikan informasi untuk memahami dan men-debug perilaku algoritma injeksi utas (kontrol konkurensi). Informasi tersebut digunakan secara internal oleh kumpulan utas pekerja.
ThreadPoolWorkerThreadAdjustmentSample
Tabel berikut menunjukkan kata kunci dan level.
Kata kunci untuk memunculkan peristiwa | Tingkat |
---|---|
ThreadingKeyword (0x10000) |
Informasi (4) |
Tabel berikut menunjukkan informasi peristiwa.
Kejadian | ID Peristiwa | Deskripsi |
---|---|---|
ThreadPoolWorkerThreadAdjustmentSample |
54 | Mengacu pada pengumpulan informasi untuk satu sampel; yaitu, pengukuran throughput dengan tingkat konkurensi tertentu, dalam waktu sekejap. |
Tabel berikut menunjukkan data peristiwa.
Nama bidang | Jenis data | Deskripsi |
---|---|---|
Throughput | win:Double | Jumlah penyelesaian per unit waktu. |
ClrInstanceID | Win:UInt16 | ID unik untuk instans CLR atau CoreCLR. |
ThreadPoolWorkerThreadAdjustmentAdjustment
Tabel berikut menunjukkan kata kunci dan level.
Kata kunci untuk memunculkan peristiwa | Tingkat |
---|---|
ThreadingKeyword (0x10000) |
Informasi (4) |
Tabel berikut menunjukkan informasi peristiwa.
Kejadian | ID Peristiwa | Deskripsi |
---|---|---|
ThreadPoolWorkerThreadAdjustmentAdjustment |
55 | Merekam perubahan dalam kontrol, ketika algoritma injeksi utas (pendakian bukit) menentukan bahwa ada perubahan dalam tingkat konkurensi. |
Tabel berikut menunjukkan data peristiwa.
Nama bidang | Jenis data | Deskripsi |
---|---|---|
AverageThroughput | win:Double | Throughput rata-rata dari sampel pengukuran. |
NewWorkerThreadCount | win:UInt32 | Jumlah baru utas pekerja aktif. |
Alasan | win:UInt32 | Alasan penyesuaian. 0x00 - Warmup. 0x01 - Initializing. 0x02 - Random move. 0x03 - Climbing move. 0x04 - Change point. 0x05 - Stabilizing. 0x06 - Starvation. 0x07 - Thread timed out. |
ClrInstanceID | Win:UInt16 | ID unik untuk instans CLR atau CoreCLR. |
ThreadPoolWorkerThreadAdjustmentStats
Tabel berikut menunjukkan kata kunci dan level.
Kata kunci untuk memunculkan peristiwa | Tingkat |
---|---|
ThreadingKeyword (0x10000) |
Informasi (4) |
Tabel berikut menunjukkan informasi peristiwa.
Kejadian | ID Peristiwa | Deskripsi |
---|---|---|
ThreadPoolWorkerThreadAdjustmentStats |
56 | Mengumpulkan data di kumpulan utas. |
Tabel berikut menunjukkan data peristiwa.
Nama bidang | Jenis data | Deskripsi |
---|---|---|
Durasi | win:Double | Jumlah waktu, dalam detik, selama statistik ini dikumpulkan. |
Throughput | win:Double | Jumlah rata-rata penyelesaian per detik selama interval ini. |
ThreadWave | win:Double | Dicadangkan untuk penggunaan internal. |
ThroughputWave | win:Double | Dicadangkan untuk penggunaan internal. |
ThroughputErrorEstimate | win:Double | Dicadangkan untuk penggunaan internal. |
AverageThroughputErrorEstimate | win:Double | Dicadangkan untuk penggunaan internal. |
ThroughputRatio | win:Double | Peningkatan relatif dalam throughput yang disebabkan oleh variasi jumlah thread pekerja aktif selama interval ini. |
Keyakinan | win:Double | Ukuran validitas bidang ThroughputRatio. |
NewcontrolSetting | win:Double | Jumlah utas pekerja aktif yang akan berfungsi sebagai dasar untuk variasi mendatang dalam jumlah utas aktif. |
NewThreadWaveMagnitude | Win:UInt16 | Besarnya variasi mendatang dalam jumlah utas aktif. |
ClrInstanceID | Win:UInt16 | ID unik untuk instans CLR atau CoreCLR. |
Peristiwa Utas I/O
Peristiwa kumpulan utas ini terjadi untuk utas di kumpulan utas I/O (port penyelesaian), yang tidak sinkron.
IOThreadCreate_V1
Tabel berikut menunjukkan kata kunci dan level.
Kata kunci untuk memunculkan peristiwa | Tingkat |
---|---|
ThreadingKeyword (0x10000) |
Informasi (4) |
Tabel berikut menunjukkan informasi peristiwa.
Kejadian | ID Peristiwa | Dimunculkan ketika |
---|---|---|
IOThreadCreate_V1 |
44 | Utas I/O dibuat di kumpulan utas. |
Tabel berikut menunjukkan data peristiwa.
Nama bidang | Jenis data | Deskripsi |
---|---|---|
Hitung | win:UInt64 | Jumlah utas I/O, termasuk utas yang baru dibuat. |
NumRetired | win:UInt64 | Jumlah utas pekerja yang pensiun. |
ClrInstanceID | Win:UInt16 | ID unik untuk instans CLR atau CoreCLR. |
IOThreadRetire_V1
Tabel berikut menunjukkan kata kunci dan level.
Kata kunci untuk memunculkan peristiwa | Tingkat |
---|---|
ThreadingKeyword (0x10000) |
Informasi (4) |
Tabel berikut menunjukkan informasi peristiwa.
Kejadian | ID Peristiwa | Dimunculkan ketika |
---|---|---|
IOThreadRetire_V1 |
46 | Utas I/O menjadi kandidat penghentian. |
Tabel berikut menunjukkan data peristiwa.
Nama bidang | Jenis data | Deskripsi |
---|---|---|
Hitung | win:UInt64 | Jumlah utas I/O yang tersisa di kumpulan utas. |
NumRetired | win:UInt64 | Jumlah utas I/O yang dihentikan. |
ClrInstanceID | Win:UInt16 | ID unik untuk instans CLR atau CoreCLR. |
IOThreadUnretire_V1
Tabel berikut menunjukkan kata kunci dan level.
Kata kunci untuk memunculkan peristiwa | Tingkat |
---|---|
ThreadingKeyword (0x10000) |
Informasi (4) |
Tabel berikut menunjukkan informasi peristiwa.
Kejadian | ID Peristiwa | Dimunculkan ketika |
---|---|---|
IOThreadUnretire_V1 |
47 | Utas I/O tidak dihentikan karena I/O yang tiba dalam masa tunggu setelah utas menjadi kandidat pemberhentian. |
Tabel berikut menunjukkan data peristiwa.
Nama bidang | Jenis data | Deskripsi |
---|---|---|
Hitung | win:UInt64 | Jumlah utas I/O di kumpulan utas, termasuk yang ini. |
NumRetired | win:UInt64 | Jumlah utas I/O yang dihentikan. |
ClrInstanceID | Win:UInt16 | ID unik untuk instans CLR atau CoreCLR. |
IOThreadTerminate
Tabel berikut menunjukkan kata kunci dan level.
Kata kunci untuk memunculkan peristiwa | Tingkat |
---|---|
ThreadingKeyword (0x10000) |
Informasi (4) |
Tabel berikut menunjukkan informasi peristiwa.
Kejadian | ID Peristiwa | Dimunculkan ketika |
---|---|---|
IOThreadTerminate |
45 | Utas I/O diakhiri di kumpulan utas. |
Tabel berikut menunjukkan data peristiwa.
Nama bidang | Jenis data | Deskripsi |
---|---|---|
Hitung | win:UInt64 | Jumlah utas I/O yang tersisa di kumpulan utas. |
NumRetired | win:UInt64 | Jumlah utas I/O yang dihentikan. |
ClrInstanceID | Win:UInt16 | ID unik untuk instans CLR atau CoreCLR. |