ThreadInformationClass Enum
The ThreadInformationClass enumeration defines identifiers that specify a particular kind of thread information that can be queried or set using thread-management functions such as NtQueryInformationThread and NtSetInformationThread.
| Value | Name | Description |
|---|---|---|
| 0 | ThreadBasicInformation | Basic information about the thread, such as its ID, exit status, and priority. |
| 1 | ThreadTimes | Execution times for the thread, includes kernel and user time. |
| 2 | ThreadPriority | Current priority level for the thread. |
| 3 | ThreadBasePriority | Base priority used when the thread is scheduled. |
| 4 | ThreadAffinityMask | Affinity mask that determines the processors on which the thread can run. |
| 5 | ThreadImpersonationToken | Impersonation token associated with the thread. |
| 6 | ThreadDescriptorTableEntry | Descriptor table entry for the thread (used primarily on x86). |
| 7 | ThreadEnableAlignmentFaultFixup | Indicates whether alignment fault fix‑up is enabled for the thread. |
| 8 | ThreadEventPair | Event pair object associated with the thread. |
| 9 | ThreadQuerySetWin32StartAddress | Wins32 start address of the thread. |
| 10 | ThreadZeroTlsCell | Specify a TLS cell to zero. |
| 11 | ThreadPerformanceCount | High‑resolution performance counter for the thread. |
| 12 | ThreadAmil | Legacy identifier – not used in current versions. |
| 13 | ThreadIdealProcessor | Ideal processor for the thread. |
| 14 | ThreadPriorityBoost | Whether priority boosting is enabled for the thread. |
| 15 | ThreadSetTlsArrayAddress | Set the address of the thread’s TLS array. |
| 16 | ThreadIsIoPending | Indicates whether the thread has pending I/O operations. |
| 17 | ThreadHideFromDebugger | Specifies if the thread is hidden from debuggers. |
| 18 | ThreadBreakOnTermination | Break on thread termination (used for debugging). |
| 19 | ThreadSwitchLegacyState | Legacy switch state information. |
| 20 | ThreadIsTerminated | Indicates if the thread has terminated. |
| 21 | ThreadLastSystemCall | Information about the last system call made by the thread. |
| 22 | ThreadIoPriority | Current I/O priority of the thread. |
| 23 | ThreadCycleTime | Processor cycle time used by the thread. |
| 24 | ThreadPagePriority | Memory page priority for the thread. |
| 25 | ThreadActualBasePriority | Actual base priority as computed by the scheduler. |
| 26 | ThreadTebInformation | Information about the thread's TEB (Thread Environment Block). |
| 27 | ThreadCSwitchMon | Context switch monitoring info. |
| 28 | ThreadCSwitchPmu | Performance monitoring unit data for context switches. |
| 29 | ThreadWow64Context | WOW64 context for 32‑bit threads on 64‑bit OS. |
| 30 | ThreadGroupInformation | Group affinity and other group‑related data. |
| 31 | ThreadUmsInformation | User‑mode scheduling information. |
| 32 | ThreadCounterProfiling | Counter‑based profiling data for the thread. |
| 33 | ThreadIdealProcessorEx | Extended ideal processor information. |
| 34 | ThreadCpuClockInfo | High‑resolution CPU clock information. |
| 35 | ThreadSuspendCount | Current suspend count of the thread. |
| 36 | ThreadHeterogeneousCpuPolicy | Policy for heterogeneous CPU architecture. |
| 37 | ThreadContainerId | Container ID that the thread belongs to (for containerization). |
| 38 | ThreadCreateTime | Exact timestamp when the thread was created. |
| 39 | ThreadPerformanceCountEx | Extended performance counter information. |
| 40 | ThreadDynamicCodePolicyInfo | Policy applied to dynamic code generation for the thread. |
| 41 | ThreadManagedThreadInfo | Information for managed (CLR) threads. |
| 42 | ThreadPowerThrottlingState | Power throttling state of the thread. |
| 43 | ThreadWorkOnBehalfTicket | Work‑on‑behalf ticket for impersonation scenarios. |
| 44 | ThreadEffectiveIoPriority | Effective I/O priority after accounting for system policies. |
| 45 | ThreadSchedulerSharedData | Shared scheduler data for the thread. |
| 46 | ThreadSmtRelatedThreadInformation | Information about sibling threads on the same SMT (Simultaneous Multithreading) core. |
| 47 | ThreadSmtSettings | SMT (Hyper‑Threading) settings for the thread. |
| 48 | ThreadMdlInformation | Memory Descriptor List (MDL) information for the thread. |
| 49 | ThreadCStateInformation | C‑state (idle state) information for power management. |
| 50 | ThreadCacheInformation | Cache allocation and usage details for the thread. |
| 51 | ThreadWakeUpCounters | Statistics about thread wake‑ups. |
| 52 | ThreadStackInformation | Stack size and usage details. |
For more details on each value, see the NtQueryInformationThread and NtSetInformationThread function pages.