Does anyone know a good tool for analyising multi-threaded applications. What I'm looking for is something that can inform me of where potential deadlocks etc.. are located.

Thanks in advance.