I have an application sometimes freezes, and I believe that the threads are entering a deadlock state.

Is there a tool for Windows that monitors a given process, and detects thread deadlock?


Two Microsoft tools come to mind. I've used both to troubleshoot memory related problems and crashes, but, not a deadlock. ApplicationVerifier and DebugDiag both state they can handle subtle programming issues including "hangs". Both are relatively easy to use, but, you'll still need to read the help files to set up their usage. Application Verifier works best if the application can be run under a debugger, but, it's not required. DebugDiag can post process a dump file (.dmp) if you have one. I'd suggest you take some time to investigate using one or both to debug your problem.

| improve this answer | |
  • I wonder if Intel VTune can deal with this kind of problem... – EProgrammerNotFound Nov 5 '14 at 16:04
  • I don't think so. We use it mostly for performance tuning. – rrirower Nov 5 '14 at 16:12

It's not exactly a monitoring application... but if you have a deadlock in a .NET application, I found the combination of WinDbg [Microsoft] and SOSex helpful.

Usage isn't simple, you'll need debugging experience. The following commands might help getting started:

.symfix c:\symbols
.loadby sos clr; .loadby sos mscorwks
.load sosex
| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.