typedef struct tagThreadState { RTHANDLE OwnerProcess; RTHANDLE NextThread; BYTE ThreadState; BYTE SuspendDepth; WORD DelayRequest; RTHANDLE LastExchange; DWORD KnDelayRequest; KNHANDLE LastKnExchange; CPUFRAME CpuFrame; } THREADSTATE_SNAPSHOT, far *LPTHREADSTATE_SNAPSHOT;
OwnerProcess
NextThread
ThreadState
Value | Meaning |
0x00 |
Ready and running |
0x01 |
Ready and not running |
0x02 |
Asleep |
0x03 |
Waiting at an exchange object |
0x04 |
Waiting at a region |
0x05 |
Waiting at an object directory |
0x06 |
Waiting at a port (deprecated) |
0x07 |
Being deleted |
0x08 |
Waiting at a kernel (low-level) object |
0x10 |
Suspended |
0x11 |
Self-suspended |
0x12 |
Asleep/Suspended |
0x13 |
Waiting at an exchange and Suspended |
0x14 |
Waiting at a region and Suspended |
0x15 |
Waiting at an object directory and Suspended |
0x16 |
Waiting at a port and suspended (deprecated) |
0x17 |
Being deleted and Suspended |
|
Waiting at a low-level object |
0x20 |
Suspended after a fault occurred |
0xff |
Thread state unknown |
SuspendDepth
DelayRequest
LastExchange
KnDelayRequest
LastKnExchange
CpuFrame
GetRtThreadState, CpuFrame structure