About Thread Flags and Process Flags
            Thread Flags
            Thread Flags provide useful information about the state and behavior of a thread. The flags are displayed as a bit mask.
            
                
                
                
                    
                
                
                    
                        | 0x00000001 | Thread’s object memory is not de-allocated | 
                    
                        | 0x00000002 | Thread’s stack is not freed | 
                    
                        | 0x00000004 | Thread is terminated | 
                    
                        | 0x00000008 | Thread cannot be resumed | 
                    
                        | 0x00000010 | Interrupt service thread | 
                    
                        | 0x00000020 | Thread has used FPU/MMX/XMM | 
                    
                        | 0x00000040 | Timer service thread | 
                    
                        | 0x00000080 | Shutdown service thread | 
                
            
            Process Flags
            Process Flags provides useful information on the state and behavior of a process. The flags are displayed as a bit mask.
            
                
                
                
                    
                
                
                    
                        | 0x00000001 | Process is exited | 
                    
                        | 0x00000002 | Process cannot be resumed | 
                    
                        | 0x00000004 | System process | 
                    
                        | 0x00000008 | Process is under debugged | 
                    
                        | 0x00000010 | Process is under debugged, including its child processes | 
                    
                        | 0x00000020 | RTSS proxy process | 
                    
                        | 0x00000040 | Process is a performance monitor | 
                    
                        | 0x00000080 | Debugger is attaching the process (for internal use only) | 
                    
                        | 0x00000100 | Debugger has attached the process | 
                    
                        | 0x00000200 | Process is undergoing local debugging | 
                    
                        | 0x00000400 | Process is dynamic process (for internal use only) | 
                    
                        | 0x00000800 | Process is calling RTDLL attach/detach routine | 
                
            
            Thread States
            
                
                
                
                
                    
                
                
                    
                        | Ready to run or running | Indicates the thread is ready to run or already running. | Returning from RtWaitForSingleObject(Ex), RtWaitForMultipleObjects(Ex), RtSleep(Ex), RtSleepFt(Ex), or by calling ResumeThread. | 
                    
                        | Wait on synch object | Indicates the thread is waiting for a synchronization object (e.g., mutex, semaphore, event) and is blocked as a result. | Calling RtWaitForSingleObject(Ex), RtWaitForMultipleObjects(Ex), etc. | 
                    
                        | Wait on internal event | The thread is waiting for a Subsystem event, such as a timer expire, interrupt signal, or system shutdown. | RTSS internal threads (from RtCreateTimer, RtAttachInterrupt, RtAttachShutdownHandler, etc.) waiting for a RTSS internal event. | 
                    
                        | Suspended | Indicates the thread is suspended. | Calling SuspendThread. | 
                    
                        | Sleeping | Indicates the thread is sleeping. | Calling RtSleep(Ex) and RtSleepFt(Ex). | 
                    
                        | Frozen | The thread cannot be run. |  |