Viade Afterburner is a freeware Microsoft Visual Studio add-In that offers several features useful for a multithreaded application development using. NET framework: Threads Map feature creates an interactive UML-like diagram that describes all the threads executing within an application as well as the classes and the synchronization primitives manipulated by these threads. It offers substantial help in understanding your application's threading architecture.
Deadlock Detection feature alerts the running application when a threads deadlock is detected by throwing an exception describing the complete cycle of threads and synchronization primitives participating in the deadlock with all the relevant call stacks. Deadlock Prediction helps to correctly implement lock leveling coding strategy that can guarantee absence of deadlocks for some applications. It's a dynamic analysis tool that tracks exclusive access acquisitions made by the threads in the running application and generates a report of the acquisitions performed in mismatching orders. Dispose Monitoring feature generates a report listing objects that implement IDisposable interface but whose Dispose() method was not called explicitly before GC has collected the objects.
There are numerous development tools, utilities, libraries and code snippets out there vying for a programmer's attention and offering to simplify software development process. Why would you want to look at yet another one? Unlike many, Afterburner requires minimal investment of your time and effort in order to benefit from it. There is no need to learn a new API or make any changes to your existing code. The only requirements are to install the add-in and to check off what features are to be applied to the selected projects in your solution no matter what. NET language is used.