다음을 통해 공유


.NET 런타임 스레드 풀 이벤트

이 문서에 설명된 이벤트는 스레드 풀의 작업자 및 I/O 스레드에 대한 정보를 수집합니다. 진단 목적으로 이 이벤트를 사용하는 방법에 관한 자세한 내용은 .NET 애플리케이션 로그 및 추적을 참조하세요.

IOThreadCreate_V1 이벤트

다음 표에서는 키워드와 수준을 보여 줍니다.

이벤트를 발생시키기 위한 키워드 Level
ThreadingKeyword (0x10000) 정보(4)

다음 표에서는 이벤트 정보를 보여 줍니다.

이벤트 이벤트 ID 발생 시기
IOThreadCreate_V1 44 스레드 풀에서 I/O 스레드가 생성됩니다.

다음 표에서는 이벤트 데이터를 보여 줍니다.

필드 이름 데이터 형식 설명
Count win:UInt64 새로 생성된 스레드를 포함한 I/O 스레드의 수입니다.
NumRetired win:UInt64 만료된 작업자 스레드의 수입니다.
ClrInstanceID win:UInt16 CLR 또는 CoreCLR 인스턴스에 대한 고유 ID입니다.

IOThreadTerminate_V1 이벤트

다음 표에서는 키워드와 수준을 보여 줍니다.

이벤트를 발생시키기 위한 키워드 Level
ThreadingKeyword (0x10000) 정보(4)

다음 표에서는 이벤트 정보를 보여 줍니다.

이벤트 이벤트 ID 발생 시기
IOThreadTerminate 45 I/O 스레드는 스레드 풀에서 종료됩니다.

다음 표에서는 이벤트 데이터를 보여 줍니다.

필드 이름 데이터 형식 설명
Count win:UInt64 스레드 풀에 남아 있는 I/O 스레드의 수입니다.
NumRetired win:UInt64 만료된 I/O 스레드의 수입니다.
ClrInstanceID win:UInt16 CLR 또는 CoreCLR 인스턴스에 대한 고유 ID입니다.

IOThreadRetire_V1 이벤트

다음 표에서는 키워드와 수준을 보여 줍니다.

이벤트를 발생시키기 위한 키워드 Level
ThreadingKeyword (0x10000) 정보(4)

다음 표에서는 이벤트 정보를 보여 줍니다.

이벤트 이벤트 ID 발생 시기
IOThreadRetire_V1 46 I/O 스레드가 만료 후보가 됩니다.

다음 표에서는 이벤트 데이터를 보여 줍니다.

필드 이름 데이터 형식 설명
Count win:UInt64 스레드 풀에 남아 있는 I/O 스레드의 수입니다.
NumRetired win:UInt64 만료된 I/O 스레드의 수입니다.
ClrInstanceID win:UInt16 CLR 또는 CoreCLR 인스턴스에 대한 고유 ID입니다.

IOThreadUnretire_V1 이벤트

다음 표에서는 키워드와 수준을 보여 줍니다.

이벤트를 발생시키기 위한 키워드 Level
ThreadingKeyword (0x10000) 정보(4)

다음 표에서는 이벤트 정보를 보여 줍니다.

이벤트 이벤트 ID 발생 시기
IOThreadUnretire_V1 47 스레드가 만료 후보가 된 후 대기 기간 내에 도착하는 I/O 때문에 I/O 스레드가 만료 취소됩니다.

다음 표에서는 이벤트 데이터를 보여 줍니다.

필드 이름 데이터 형식 설명
Count win:UInt64 이 스레드를 포함하여 스레드 풀에 있는 I/O 스레드의 수입니다.
NumRetired win:UInt64 만료된 I/O 스레드의 수입니다.
ClrInstanceID Win:UInt16 CLR 또는 CoreCLR 인스턴스에 대한 고유 ID입니다.

ThreadPoolWorkerThreadStart 이벤트

이벤트를 발생시키기 위한 키워드 Level
ThreadingKeyword (0x10000) 정보(4)
이벤트 이벤트 ID 설명
ThreadPoolWorkerThreadStart 50 작업자 스레드가 생성됩니다.
필드 이름 데이터 형식 설명
ActiveWorkerThreadCount win:UInt32 이미 작업을 처리하고 있는 작업자 스레드를 포함하여 작업을 처리할 수 있는 작업자 스레드의 개수입니다.
RetiredWorkerThreadCount win:UInt32 작업을 처리할 수 없지만, 나중에 더 많은 스레드가 필요할 때를 대비하여 유지하고 있는 작업자 스레드의 개수입니다.
ClrInstanceID win:UInt16 CLR 또는 CoreCLR 인스턴스에 대한 고유 ID입니다.

ThreadPoolWorkerThreadStop 이벤트

이벤트를 발생시키기 위한 키워드 Level
ThreadingKeyword (0x10000) 정보(4)
이벤트 이벤트 ID 설명
ThreadPoolWorkerThreadStop 51 작업자 스레드가 중지됩니다.
필드 이름 데이터 형식 설명
ActiveWorkerThreadCount win:UInt32 이미 작업을 처리하고 있는 작업자 스레드를 포함하여 작업을 처리할 수 있는 작업자 스레드의 개수입니다.
RetiredWorkerThreadCount win:UInt32 작업을 처리할 수 없지만, 나중에 더 많은 스레드가 필요할 때를 대비하여 유지하고 있는 작업자 스레드의 개수입니다.
ClrInstanceID win:UInt16 CLR 또는 CoreCLR 인스턴스에 대한 고유 ID입니다.

ThreadPoolWorkerThreadWait 이벤트

이벤트를 발생시키기 위한 키워드 Level
ThreadingKeyword (0x10000) 정보(4)
이벤트 이벤트 ID 설명
ThreadPoolWorkerThreadWait 57 작업자 스레드가 작업 대기를 시작합니다.
필드 이름 데이터 형식 설명
ActiveWorkerThreadCount win:UInt32 이미 작업을 처리하고 있는 작업자 스레드를 포함하여 작업을 처리할 수 있는 작업자 스레드의 개수입니다.
RetiredWorkerThreadCount win:UInt32 작업을 처리할 수 없지만, 나중에 더 많은 스레드가 필요할 때를 대비하여 유지하고 있는 작업자 스레드의 개수입니다.
ClrInstanceID win:UInt16 CLR 또는 CoreCLR 인스턴스에 대한 고유 ID입니다.

ThreadPoolWorkerThreadRetirementStart 이벤트

이벤트를 발생시키기 위한 키워드 Level
ThreadingKeyword (0x10000) 정보(4)
이벤트 이벤트 ID 설명
ThreadPoolWorkerThreadRetirementStart 52 작업자 스레드가 만료됩니다.
필드 이름 데이터 형식 설명
ActiveWorkerThreadCount win:UInt32 이미 작업을 처리하고 있는 작업자 스레드를 포함하여 작업을 처리할 수 있는 작업자 스레드의 개수입니다.
RetiredWorkerThreadCount win:UInt32 작업을 처리할 수 없지만, 나중에 더 많은 스레드가 필요할 때를 대비하여 유지하고 있는 작업자 스레드의 개수입니다.
ClrInstanceID win:UInt16 CLR 또는 CoreCLR 인스턴스에 대한 고유 ID입니다.

ThreadPoolWorkerThreadRetirementStop 이벤트

이벤트를 발생시키기 위한 키워드 Level
ThreadingKeyword (0x10000) 정보(4)
이벤트 이벤트 ID 설명
ThreadPoolWorkerThreadRetirementStop 53 만료된 작업자 스레드가 다시 활성 상태가 됩니다.
필드 이름 데이터 형식 설명
ActiveWorkerThreadCount win:UInt32 이미 작업을 처리하고 있는 작업자 스레드를 포함하여 작업을 처리할 수 있는 작업자 스레드의 개수입니다.
RetiredWorkerThreadCount win:UInt32 작업을 처리할 수 없지만, 나중에 더 많은 스레드가 필요할 때를 대비하여 유지하고 있는 작업자 스레드의 개수입니다.
ClrInstanceID win:UInt16 CLR 또는 CoreCLR 인스턴스에 대한 고유 ID입니다.

ThreadPoolWorkerThreadAdjustmentSample 이벤트

다음 표에서는 키워드와 수준을 보여 줍니다.

이벤트를 발생시키기 위한 키워드 Level
ThreadingKeyword (0x10000) 정보(4)

다음 표에서는 이벤트 정보를 보여 줍니다.

이벤트 이벤트 ID 설명
ThreadPoolWorkerThreadAdjustmentSample 54 한 샘플의 정보 컬렉션을 나타냅니다. 즉, 특정 시점에 특정 동시성 수준으로 처리량을 측정한 것입니다.

다음 표에서는 이벤트 데이터를 보여 줍니다.

필드 이름 데이터 형식 설명
Throughput win:Double 시간 단위당 완료 수입니다.
ClrInstanceID win:UInt16 CLR 또는 CoreCLR 인스턴스에 대한 고유 ID입니다.

ThreadPoolWorkerThreadAdjustmentAdjustment 이벤트

다음 표에서는 키워드와 수준을 보여 줍니다.

이벤트를 발생시키기 위한 키워드 Level
ThreadingKeyword (0x10000) 정보(4)

다음 표에서는 이벤트 정보를 보여 줍니다.

이벤트 이벤트 ID 설명
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 인스턴스에 대한 고유 ID입니다.

ThreadPoolWorkerThreadAdjustmentStats 이벤트

다음 표에서는 키워드와 수준을 보여 줍니다.

이벤트를 발생시키기 위한 키워드 Level
ThreadingKeyword (0x10000) 자세한 정보 표시(5)

다음 표에서는 이벤트 정보를 보여 줍니다.

이벤트 이벤트 ID 설명
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 ThroughputRatio 필드의 유효성 측정값입니다.
NewcontrolSetting win:Double 활성 스레드 개수에서 미래의 변동에 대한 기준으로 사용될 활성 작업자 스레드 수입니다.
NewThreadWaveMagnitude win:UInt16 활성 스레드 개수에서 미래 변동의 크기입니다.
ClrInstanceID win:UInt16 CLR 또는 CoreCLR 인스턴스에 대한 고유 ID입니다.

ThreadPoolEnqueue 이벤트

다음 표에서는 키워드와 수준을 보여 줍니다.

이벤트를 발생시키기 위한 키워드 Level
ThreadingKeyword (0x10000) 자세한 정보 표시(5)

다음 표에서는 이벤트 정보를 보여 줍니다.

이벤트 이벤트 ID 설명
ThreadPoolEnqueue 61 작업 항목을 스레드 풀 큐의 큐에 넣었습니다.

다음 표에서는 이벤트 데이터를 보여 줍니다.

필드 이름 데이터 형식 설명
WorkID win:Pointer 작업 요청에 대한 포인터입니다.
ClrInstanceID win:UInt16 CoreCLR 인스턴스의 고유 ID입니다.

ThreadPoolDequeue 이벤트

다음 표에서는 키워드와 수준을 보여 줍니다.

이벤트를 발생시키기 위한 키워드 Level
ThreadingKeyword (0x10000) 자세한 정보 표시(5)

다음 표에서는 이벤트 정보를 보여 줍니다.

이벤트 이벤트 ID 설명
ThreadPoolDequeue 62 작업 항목이 스레드 풀 큐의 큐에서 제거되었습니다.

다음 표에서는 이벤트 데이터를 보여 줍니다.

필드 이름 데이터 형식 설명
WorkID win:Pointer 작업 요청에 대한 포인터입니다.
ClrInstanceID win:UInt16 CoreCLR 인스턴스의 고유 ID입니다.

ThreadPoolIOEnqueue 이벤트

다음 표에서는 키워드와 수준을 보여 줍니다.

이벤트를 발생시키기 위한 키워드 Level
ThreadingKeyword (0x10000) 자세한 정보 표시(5)

다음 표에서는 이벤트 정보를 보여 줍니다.

이벤트 이벤트 ID 설명
ThreadPoolIOEnqueue 63 스레드는 비동기 IO 완료가 발생한 후 IO 완료 알림을 큐에 넣습니다.

다음 표에서는 이벤트 데이터를 보여 줍니다.

필드 이름 데이터 형식 설명
NativeOverlapped win:Pointer 내부용으로 예약되어 있습니다.
Overlapped win:Pointer 내부용으로 예약되어 있습니다.
MultiDequeues win:Boolean 내부용으로 예약되어 있습니다.
ClrInstanceID win:UInt16 CoreCLR 인스턴스의 고유 ID입니다.

ThreadPoolIODequeue 이벤트

다음 표에서는 키워드와 수준을 보여 줍니다.

이벤트를 발생시키기 위한 키워드 Level
ThreadingKeyword (0x10000) 자세한 정보 표시(5)

다음 표에서는 이벤트 정보를 보여 줍니다.

이벤트 이벤트 ID 설명
ThreadPoolIODequeue 64 스레드는 IO 완료 알림을 큐에서 제거합니다.

다음 표에서는 이벤트 데이터를 보여 줍니다.

필드 이름 데이터 형식 설명
NativeOverlapped win:Pointer 내부용으로 예약되어 있습니다.
Overlapped win:Pointer 내부용으로 예약되어 있습니다.
MultiDequeues win:Boolean 내부용으로 예약되어 있습니다.
ClrInstanceID win:UInt16 CoreCLR 인스턴스의 고유 ID입니다.

ThreadPoolIOPack 이벤트

다음 표에서는 키워드와 수준을 보여 줍니다.

이벤트를 발생시키기 위한 키워드 Level
ThreadingKeyword (0x10000) 자세한 정보 표시(5)

다음 표에서는 이벤트 정보를 보여 줍니다.

이벤트 이벤트 ID 설명
ThreadPoolIOPack 65 ThreadPool 겹친 IO 팩이 호출됩니다.

다음 표에서는 이벤트 데이터를 보여 줍니다.

필드 이름 데이터 형식 설명
NativeOverlapped win:Pointer 내부용으로 예약되어 있습니다.
Overlapped win:Pointer 내부용으로 예약되어 있습니다.
ClrInstanceID win:UInt16 CoreCLR 인스턴스의 고유 ID입니다.

ThreadCreating 이벤트

다음 표에서는 키워드와 수준을 보여 줍니다.

이벤트를 발생시키기 위한 키워드 Level
ThreadingKeyword (0x10000) 정보(4)

다음 표에서는 이벤트 정보를 보여 줍니다.

이벤트 이벤트 ID 설명
ThreadCreating 70 스레드가 생성되었습니다.

다음 표에서는 이벤트 데이터를 보여 줍니다.

필드 이름 데이터 형식 설명
ID win:Pointer 스레드 ID
ClrInstanceID win:UInt16 CoreCLR 인스턴스의 고유 ID입니다.

ThreadRunning 이벤트

다음 표에서는 키워드와 수준을 보여 줍니다.

이벤트를 발생시키기 위한 키워드 Level
ThreadingKeyword (0x10000) 정보(4)

다음 표에서는 이벤트 정보를 보여 줍니다.

이벤트 이벤트 ID 설명
ThreadRunning 71 스레드 실행이 시작되었습니다.

다음 표에서는 이벤트 데이터를 보여 줍니다.

필드 이름 데이터 형식 설명
ID win:Pointer 스레드 ID
ClrInstanceID win:UInt16 CoreCLR 인스턴스의 고유 ID입니다.