Avoid threads deadlock
On this month's issue of MSDN Magazine, Stephen Toub describe the class DdMonitor. DdMonitor implements almost all interfaces exposed by .NET System.Threading.Monitor class but includes deadlock detection capabilities too.
With the objective to make available a lock(...) keyword replacement, a static DdMonitor.Lock(...) is implemented too.
A System.Threading.Monitor replacement to avoid threads deadlocks