Just a very short instruction on how to inspect native dump files with WinDbg:
- Get and install and then start WinDbg
- File - Open Crash Dump
~*kb
- Lists all the threads and their call stacks.
- !locks
Will show you the critical sections. LockCount - RecursionCount - 1 = the amount of times the lock has been acquired.
- So if you have several locks that are taken you can check the call stacks and see where you have the deadlock.
- !runaway
Will show you time spent in each thread.
I find it useful to get a text dump of all the call stacks which I can search in my text editor, rather than clicking around using Visual studio when searching for a deadlock.
Read more: Jayway Team Blog