views:

57

answers:

3

Is there any tool or plugin for visual studio (2008) that will go over a C# class and look for possible scenarios that could lead to potential deadlocks? Anything that would seek out every lock (xxx) {} block and then seek other methods that call the method leading to that critical section and forms a list of methods that could lead to a conflict.

+1  A: 

I have use Coverity at work for Java that did a pretty good job at detecting potential deadlock conditions. It is supposed to support C# as well, but have not run it against any code to verify its effectiveness.

Rob Goodwin
A: 

Typemock make a product called Typemock Racer, but its not free and I don't believe it does static analysis. I think it does analyse your code, find the conditions which will cause a deadlock and give you a test which will reproduce those conditions so you can debug and fix it and have a test to ensure it doesn't come back again.

Sam Holder
+1  A: 

What about CHESS (http://msdn.microsoft.com/en-us/devlabs/cc950526.aspx) from Microsoft devlabs? I have not yet played with it, but it looks as it could be a help for your problem.

Looks good, but we can not use it due to it's license. We do not qualify for either of the 2 licenses at the moment.
My Other Me