Wait Chain Traversal is a feature that was introduced in Windows 7. It is a tool that lets you identify the actual process that is resulting in a hung or frozen application. Windows 8/10 goes a step further and lets you analyze Wait Chain right from the Task Manager itself. My MVP colleague Shyam Sasindran had briefly touched on the Wait Chain Traversal (WCT) feature, which allows debuggers to diagnose application hangs and deadlocks, while talking about the features of Windows 8 Task Manager. Today, lets see it in a little more detail.
Wait Chain Traversal
In Windows 7, the Resource Monitor offers the ability to analyze Wait Chain. Run resmon to open the Resource Monitor. Identify the hung or suspended process ib the Overview or CPU tab and right-click on it. In the context menu, you will see Analyze Wait Chain.
Windows 8 now allows you to analyze wait chain right from the Windows Task Manager itself, apart from the Resource Monitor. Open your Task Manager and identify the hung or frozen process. Right-click on it and select Analyze wait chain in the context menu.
Analyze Wait Chain
The Analyze Wait Chain tree shows which processes or open nodes in a tree are using or waiting to use a resource used by another process or child nodes in the tree, and is required for the selected process to continue. Wait Chain Traversal (WCT) enables debuggers to diagnose application hangs and deadlocks. You can read more about it on TechNet.
Once you open the Overview or CPU tabs, you’ll find the list of running processes. If a process is “stuck”, it’ll be highlighted with red text, “Not responding”. You can right-click on the process, and assign a new task including ending of the process.
Kill Not responding, hung, frozen process
If you select Analyze Wait Chain, you will see a list of processes and the process tree associated with it. You may also get to see a message – xyz.exe process is waiting for another process (abc.exe), to give an example. If you have opened the Task Manager as an administrator, you will be able to see many more processes. If you’re running Windows as an administrator, the Task Manager will already be elevated by default in Windows 8. The following figure just shows how the box looks. None of my processes were hanging long enough for me to get its Wait Tree.
You may now wait or choose to kill the process, but remember when you kill any process, if it is a system process, and other function dependant on it may also crash, so you have to be careful here.
Incidentally, Process Hacker will also help you find out which of your process freezes. So will What is Hang. This utility tries to detect the software or process that is currently hung, and displays some information that may allow you to sort out and understand what exactly is at the root of such freezing.