My application is hung and windbg dump analysis shows all threads are in suspended/unfrozen state. What does it mean?

4.3k Views Asked by At

My outlook addin application is hung and windbg hang dump analysis shows all threads are in suspended/unfrozen state. The errors in the event viewer and process monitor shows hundreds of registry lookup failures and disk access failures. What does the threads' suspended/unfrozen state mean?

1

There are 1 best solutions below

1
EdChum On

The F1 help from WinDBG explains the following in greater detail if you look for 'Controlling Processes and Threads' link from '~ (Thread Status) command' under Index tab. Also there is a MSDN link.

So firstly freezing has no meaning unless you have a debugger attached so only a debugger can freeze or unfreeze a thread.

Suspended threads have a suspend count such that when the count goes to 0 resumes execution for that thread if appropriate, higher than 0 will suspend the thread.

Typically when you attach the debugger then it will increase the suspend count for each thread by 1 as you are invasively debugging the application or you have hit a breakpoint.

So frozen/unfrozen state only has meaning when you have the debugger attached and have hit a breakpoint, suspended/unsuspended is the suspend count for each thread when your application is running.

Hope this helps.