Поделиться через


События пула потоков среды выполнения .NET

События, описанные в этой статье, собирают сведения о рабочих потоках и потоках ввода-вывода в threadpool. Дополнительные сведения об использовании этих событий для диагностики см. в ведения журнала и трассировки приложений .NET.

событие IOThreadCreate_V1

В следующей таблице показано ключевое слово и уровень.

Ключевое слово для вызова события Уровень
ThreadingKeyword (0x10000) Информационные (4)

В следующей таблице показаны сведения о событии.

Событие Идентификатор события Возникает, когда
IOThreadCreate_V1 44 Поток ввода-вывода создается в пуле потоков.

В следующей таблице показаны данные события.

Имя поля Тип данных Описание
Count win:UInt64 Число потоков ввода-вывода, включая только что созданный поток.
NumRetired win:UInt64 Число устаревших рабочих потоков.
ClrInstanceID win:UInt16 Уникальный идентификатор для экземпляра СРЕДЫ CLR или CoreCLR.

событие IOThreadTerminate_V1

В следующей таблице показано ключевое слово и уровень

Ключевое слово для вызова события Уровень
ThreadingKeyword (0x10000) Информационные (4)

В следующей таблице показаны сведения о событии.

Событие Идентификатор события Возникает, когда
IOThreadTerminate 45 Поток ввода-вывода завершается в пуле потоков.

В следующей таблице показаны данные события.

Имя поля Тип данных Описание
Count win:UInt64 Количество потоков ввода-вывода, оставшихся в пуле потоков.
NumRetired win:UInt64 Число устаревших потоков ввода-вывода.
ClrInstanceID win:UInt16 Уникальный идентификатор для экземпляра СРЕДЫ CLR или CoreCLR.

событие IOThreadRetire_V1

В следующей таблице показано ключевое слово и уровень.

Ключевое слово для вызова события Уровень
ThreadingKeyword (0x10000) Информационные (4)

В следующей таблице показаны сведения о событии.

Событие Идентификатор события Возникает, когда
IOThreadRetire_V1 46 Поток ввода-вывода становится кандидатом на пенсию.

В следующей таблице показаны данные события.

Имя поля Тип данных Описание
Count win:UInt64 Количество потоков ввода-вывода, оставшихся в пуле потоков.
NumRetired win:UInt64 Число устаревших потоков ввода-вывода.
ClrInstanceID win:UInt16 Уникальный идентификатор для экземпляра СРЕДЫ CLR или CoreCLR.

событие IOThreadUnretire_V1

В следующей таблице показано ключевое слово и уровень.

Ключевое слово для вызова события Уровень
ThreadingKeyword (0x10000) Информационные (4)

В следующей таблице показаны сведения о событии.

Событие Идентификатор события Возникает, когда
IOThreadUnretire_V1 47 Поток ввода-вывода не повторен из-за ввода-вывода, который поступает в течение периода ожидания после того, как поток становится кандидатом на пенсию.

В следующей таблице показаны данные события.

Имя поля Тип данных Описание
Count win:UInt64 Число потоков ввода-вывода в пуле потоков, включая этот поток.
NumRetired win:UInt64 Число устаревших потоков ввода-вывода.
ClrInstanceID Win:UInt16 Уникальный идентификатор для экземпляра СРЕДЫ CLR или CoreCLR.

Событие ThreadPoolWorkerThreadStart

Ключевое слово для вызова события Уровень
ThreadingKeyword (0x10000) Информационные (4)
Событие Идентификатор события Описание
ThreadPoolWorkerThreadStart 50 Создается рабочий поток.
Имя поля Тип данных Описание
ActiveWorkerThreadCount win:UInt32 Количество рабочих потоков, доступных для обработки работы, включая те, которые уже обрабатываются.
RetiredWorkerThreadCount win:UInt32 Количество рабочих потоков, которые недоступны для обработки работы, но которые хранятся в резерве, если больше потоков потребуется позже.
ClrInstanceID win:UInt16 Уникальный идентификатор для экземпляра СРЕДЫ CLR или CoreCLR.

Событие ThreadPoolWorkerThreadStop

Ключевое слово для вызова события Уровень
ThreadingKeyword (0x10000) Информационные (4)
Событие Идентификатор события Описание
ThreadPoolWorkerThreadStop 51 Рабочий поток остановлен.
Имя поля Тип данных Описание
ActiveWorkerThreadCount win:UInt32 Количество рабочих потоков, доступных для обработки работы, включая те, которые уже обрабатываются.
RetiredWorkerThreadCount win:UInt32 Количество рабочих потоков, которые недоступны для обработки работы, но которые хранятся в резерве, если больше потоков потребуется позже.
ClrInstanceID win:UInt16 Уникальный идентификатор для экземпляра СРЕДЫ CLR или CoreCLR.

Событие ThreadPoolWorkerThreadWait

Ключевое слово для вызова события Уровень
ThreadingKeyword (0x10000) Информационные (4)
Событие Идентификатор события Описание
ThreadPoolWorkerThreadWait 57 Рабочий поток начинает ожидание работы.
Имя поля Тип данных Описание
ActiveWorkerThreadCount win:UInt32 Количество рабочих потоков, доступных для обработки работы, включая те, которые уже обрабатываются.
RetiredWorkerThreadCount win:UInt32 Количество рабочих потоков, которые недоступны для обработки работы, но которые хранятся в резерве, если больше потоков потребуется позже.
ClrInstanceID win:UInt16 Уникальный идентификатор для экземпляра СРЕДЫ CLR или CoreCLR.

Событие ThreadPoolWorkerThreadRetirementStart

Ключевое слово для вызова события Уровень
ThreadingKeyword (0x10000) Информационные (4)
Событие Идентификатор события Описание
ThreadPoolWorkerThreadRetirementStart 52 Рабочий поток уходит в отставку.
Имя поля Тип данных Описание
ActiveWorkerThreadCount win:UInt32 Количество рабочих потоков, доступных для обработки работы, включая те, которые уже обрабатываются.
RetiredWorkerThreadCount win:UInt32 Количество рабочих потоков, которые недоступны для обработки работы, но которые хранятся в резерве, если больше потоков потребуется позже.
ClrInstanceID win:UInt16 Уникальный идентификатор для экземпляра СРЕДЫ CLR или CoreCLR.

Событие ThreadPoolWorkerThreadRetirementStop

Ключевое слово для вызова события Уровень
ThreadingKeyword (0x10000) Информационные (4)
Событие Идентификатор события Описание
ThreadPoolWorkerThreadRetirementStop 53 Неактивный рабочий поток снова становится активным.
Имя поля Тип данных Описание
ActiveWorkerThreadCount win:UInt32 Количество рабочих потоков, доступных для обработки работы, включая те, которые уже обрабатываются.
RetiredWorkerThreadCount win:UInt32 Количество рабочих потоков, которые недоступны для обработки работы, но которые хранятся в резерве, если больше потоков потребуется позже.
ClrInstanceID win:UInt16 Уникальный идентификатор для экземпляра СРЕДЫ CLR или CoreCLR.

Событие ThreadPoolWorkerThreadAdjustmentSample

В следующей таблице показано ключевое слово и уровень.

Ключевое слово для вызова события Уровень
ThreadingKeyword (0x10000) Информационные (4)

В следующей таблице показаны сведения о событии.

Событие Идентификатор события Описание
ThreadPoolWorkerThreadAdjustmentSample 54 Ссылается на коллекцию сведений для одного примера; То есть измерение пропускной способности с определенным уровнем параллелизма в момент времени.

В следующей таблице показаны данные события.

Имя поля Тип данных Описание
Throughput win:Double Количество завершений за единицу времени.
ClrInstanceID win:UInt16 Уникальный идентификатор для экземпляра СРЕДЫ CLR или CoreCLR.

Событие ThreadPoolWorkerThreadAdjustmentAdjustment

В следующей таблице показано ключевое слово и уровень.

Ключевое слово для вызова события Уровень
ThreadingKeyword (0x10000) Информационные (4)

В следующей таблице показаны сведения о событии.

Событие Идентификатор события Описание
ThreadPoolWorkerThreadAdjustmentAdjustment 55 Записывает изменение элемента управления, когда алгоритм внедрения потоков (хилл-альпинизм) определяет, что изменение уровня параллелизма выполняется.

В следующей таблице показаны данные события.

Имя поля Тип данных Описание
AverageThroughput win:Double Средняя пропускная способность выборки измерений.
NewWorkerThreadCount win:UInt32 Новое число активных рабочих потоков.
Reason win:UInt32 Причина корректировки.

0x0 — прогревание.

0x1 — инициализация.

0x2 — случайное перемещение.

0x3 - восхождение.

0x4 — точка изменения.

0x5 — стабилизация.

0x6 - Голодание.

0x7 — истекло время ожидания потока.

0x8 — совместная блокировка.
ClrInstanceID win:UInt16 Уникальный идентификатор для экземпляра СРЕДЫ CLR или CoreCLR.

Событие ThreadPoolWorkerThreadAdjustmentStats

В следующей таблице показано ключевое слово и уровень.

Ключевое слово для вызова события Уровень
ThreadingKeyword (0x10000) Подробные (5)

В следующей таблице показаны сведения о событии.

Событие Идентификатор события Описание
ThreadPoolWorkerThreadAdjustmentStats 56 Собирает данные в пуле потоков.

В следующей таблице показаны данные события

Имя поля Тип данных Описание
Duration win:Double Время, в секундах, в течение которого эти статистические данные были собраны.
Throughput win:Double Среднее количество завершений в секунду в течение этого интервала.
ThreadWave win:Double Зарезервировано для внутреннего использования.
ThroughputWave win:Double Зарезервировано для внутреннего использования.
ThroughputErrorEstimate win:Double Зарезервировано для внутреннего использования.
AverageThroughputErrorEstimate win:Double Зарезервировано для внутреннего использования.
ThroughputRatio win:Double Относительное улучшение пропускной способности, вызванное вариациями числа активных рабочих потоков в течение этого интервала.
Confidence win:Double Мера допустимости поля Пропускной способностиRatio.
NewcontrolSetting win:Double Количество активных рабочих потоков, которые служат базовым показателем для будущих вариантов в активном количестве потоков.
NewThreadWaveMagnitude win:UInt16 Величина будущих вариаций в активном количестве потоков.
ClrInstanceID win:UInt16 Уникальный идентификатор для экземпляра СРЕДЫ CLR или CoreCLR.

Событие ThreadPoolEnqueue

В следующей таблице показано ключевое слово и уровень.

Ключевое слово для вызова события Уровень
ThreadingKeyword (0x10000) Подробные (5)

В следующей таблице показаны сведения о событии.

Событие Идентификатор события Описание
ThreadPoolEnqueue 61 Рабочий элемент был заквечен в очереди пула потоков.

В следующей таблице показаны данные события

Имя поля Тип данных Описание
WorkID win:Pointer Указатель на рабочий запрос.
ClrInstanceID win:UInt16 Уникальный идентификатор для экземпляра CoreCLR.

Событие ThreadPoolDequeue

В следующей таблице показано ключевое слово и уровень.

Ключевое слово для вызова события Уровень
ThreadingKeyword (0x10000) Подробные (5)

В следующей таблице показаны сведения о событии.

Событие Идентификатор события Описание
ThreadPoolDequeue 62 Рабочий элемент был удален из очереди пула потоков.

В следующей таблице показаны данные события

Имя поля Тип данных Описание
WorkID win:Pointer Указатель на рабочий запрос.
ClrInstanceID win:UInt16 Уникальный идентификатор для экземпляра CoreCLR.

Событие ThreadPoolIOEnqueue

В следующей таблице показано ключевое слово и уровень.

Ключевое слово для вызова события Уровень
ThreadingKeyword (0x10000) Подробные (5)

В следующей таблице показаны сведения о событии.

Событие Идентификатор события Описание
ThreadPoolIOEnqueue 63 Поток заквещает уведомление о завершении ввода-вывода после асинхронного завершения ввода-вывода.

В следующей таблице показаны данные события

Имя поля Тип данных Описание
NativeOverlapped win:Pointer Зарезервировано для внутреннего использования.
Overlapped win:Pointer Зарезервировано для внутреннего использования.
MultiDequeues win:Boolean Зарезервировано для внутреннего использования.
ClrInstanceID win:UInt16 Уникальный идентификатор для экземпляра CoreCLR.

Событие ThreadPoolIODequeue

В следующей таблице показано ключевое слово и уровень.

Ключевое слово для вызова события Уровень
ThreadingKeyword (0x10000) Подробные (5)

В следующей таблице показаны сведения о событии.

Событие Идентификатор события Описание
ThreadPoolIODequeue 64 Поток отменяет уведомление о завершении ввода-вывода.

В следующей таблице показаны данные события

Имя поля Тип данных Описание
NativeOverlapped win:Pointer Зарезервировано для внутреннего использования.
Overlapped win:Pointer Зарезервировано для внутреннего использования.
MultiDequeues win:Boolean Зарезервировано для внутреннего использования.
ClrInstanceID win:UInt16 Уникальный идентификатор для экземпляра CoreCLR.

Событие ThreadPoolIOPack

В следующей таблице показано ключевое слово и уровень.

Ключевое слово для вызова события Уровень
ThreadingKeyword (0x10000) Подробные (5)

В следующей таблице показаны сведения о событии.

Событие Идентификатор события Описание
ThreadPoolIOPack 65 Вызывается пакет ввода-вывода, перекрываемый ThreadPool.

В следующей таблице показаны данные события

Имя поля Тип данных Описание
NativeOverlapped win:Pointer Зарезервировано для внутреннего использования.
Overlapped win:Pointer Зарезервировано для внутреннего использования.
ClrInstanceID win:UInt16 Уникальный идентификатор для экземпляра CoreCLR.

Событие ThreadCreating

В следующей таблице показаны ключевые слова и уровни.

Ключевое слово для вызова события Уровень
ThreadingKeyword (0x10000) Информационные (4)

В следующей таблице показаны сведения о событии.

Событие Идентификатор события Описание
ThreadCreating 70 Поток создан.

В следующей таблице показаны данные события.

Имя поля Тип данных Описание
ID win:Pointer Идентификатор потока
ClrInstanceID win:UInt16 Уникальный идентификатор для экземпляра CoreCLR.

Событие ThreadRunning

В следующей таблице показаны ключевые слова и уровни.

Ключевое слово для вызова события Уровень
ThreadingKeyword (0x10000) Информационные (4)

В следующей таблице показаны сведения о событии.

Событие Идентификатор события Описание
ThreadRunning 71 Поток запущен.

В следующей таблице показаны данные события.

Имя поля Тип данных Описание
ID win:Pointer Идентификатор потока
ClrInstanceID win:UInt16 Уникальный идентификатор для экземпляра CoreCLR.