Thread Status
Go Up to Debug Windows Index
View > Debug Windows > Threads
Shows the status of all processes and threads that are executing in each application being debugged.
Item | Description |
---|---|
Thread ID |
Displays the process name, the OS assigned thread ID, or, if the thread is named, the thread name. |
State |
Indicates the execution state of the thread as Runnable, Stopped, Blocked, or None. For processes, the state indicates how the process was created: Spawned, Attached, or Cross-process Attach. |
Status |
Indicates the thread status as one of the following:
|
Location |
Indicates the function name or address associated with the thread. |
Wait Chain |
(For Windows 7) Lists the threads that are blocked. No threads are blocked if this field is empty. A wait chain is an alternating sequence of threads and synchronization objects. Each thread waits for the object that follows it, and that object is owned by the subsequent thread in the chain. The view also reports when a deadlock is detected. |
Tip: The current process is marked with a green arrow. Non-current processes are marked with a light blue arrow. The current process and current thread become the context for the next user action, for example, run, pause, or reset.
Wait Chain Icons
The following wait chain icons can appear in the Thread list view.
Represents non-current, non-blocked threads. | |
Represents the currently active thread. | |
Represents all non-current processes (only seen if you are debugging more than one process). | |
Represents a deadlocked thread. | |
Represents the currently active process. |
Context Menu
Right-click the Thread Status window to display the following commands.
Item | Description |
---|---|
View Source |
Displays the Code Editor at the corresponding source location of the selected thread ID, but does not make the Code Editor the active window. |
Go to Source |
Displays the Code Editor at the corresponding source location of the selected thread ID and makes the Code Editor the active window. |
Make Current |
Makes the selected thread the active thread if it is not so already. If the thread is not already part of the active process, its process also becomes the active process. |
Freeze |
Prevents the selected thread from running and changes its Status to Frozen. The thread remains frozen until the process terminates or you thaw the thread using either the Thaw or Thaw All Threads command. |
Freeze All Other Threads |
Prevents all threads from running (except the selected thread), and changes their Status to Frozen. The threads remain frozen until the process terminates or you thaw the threads using either the Thaw or Thaw All Threads command. |
Thaw |
Reverses the Frozen status of the selected thread and enables the thread to run again. |
Thaw All Threads |
Reverses the Frozen status of the selected threads and enables the threads to run again. |
Name Thread |
Opens the Set Thread Name dialog box, enabling you to specify a name for the selected thread. The name you set exists only for the duration of the debugger session. See also Naming a Thread While Debugging and Naming a Thread. |
Terminate Process |
Terminates the process, if a process is selected, or the process that the thread is part of, if a thread is selected. |
Detach Process |
Detaches the process, if a process is selected, or the process that the thread is part of, if a thread is selected. |
Pause Process |
Pauses the process, if a process is selected, or the process that the thread is part of, if a thread is selected. This option is available only if the process is running. |
Process Properties |
Lets you set debugger options temporarily for a particular process during the debugging session. |
Stay on Top |
Keeps the Thread Status window visible even when another window is in focus. |
Dockable |
Enables drag-and-dock for the Thread Status window. |