THREAD_BASIC_INFORMATION - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
#ifndef _NTPSAPI_H

//
// Thread information structures
//

/**
 * The THREAD_BASIC_INFORMATION structure contains basic information about the thread.
 */
typedef struct _THREAD_BASIC_INFORMATION
{
    NTSTATUS ExitStatus;        // The exit status of the thread or STATUS_PENDING when the thread has not terminated. (GetExitCodeThread)
    PTEB TebBaseAddress;        // The base address of the memory region containing the TEB structure. (NtCurrentTeb)
    CLIENT_ID ClientId;         // The process and thread identifier of the thread.
    KAFFINITY AffinityMask;     // The affinity mask of the thread. (deprecated) (SetThreadAffinityMask)
    KPRIORITY Priority;
    KPRIORITY BasePriority;
} THREAD_BASIC_INFORMATION, *PTHREAD_BASIC_INFORMATION;

#endif

View code on GitHub

ExitStatus

Thread exit status. If thread is not terminated, it has STATUS_PENDING value. See also Win32 API GetExitCodeThread.

TebBaseAddress

Address of TEB structure for specified thread. See also NtCurrentTeb.

ClientId

Unique process id and thread id.

AffinityMask

Thread affinity mask. There are no Win32 call GetThreadAffinityMask, but there's function SetThreadAffinityMask that's use AffinityMask value. See also ThreadAffinityMask information class.

Priority

I'm not sure...

BasePriority

Thread base priority. Used by Kernel32.dll in function GetThreadPriority. See also ThreadBasePriority information class.


Structure is used with ThreadBasicInformation information class in NtQueryInformationThread call.

Documented by

See also