Profiling a .NET application with the Concurrency Visualizer in Visual Studio 11Developer Preview has a less noisy Synchronization profile report than in Visual Studio 2010. The reason is because synchronizing withthe thread driving garbage collection is now categorized as Memory Management.Without this re-categorization, the Synchronization profile report can list outany method as having been blocked by Synchronization, even if it doesn’t haveany code which block, locks or synchronizes. The reason is because when athread is performing garbage collection it needs to wait for all of the other managedthreads to pause. So at any point, a thread can get “paused” by the RareDisablePreemptiveGC,or HijackThread methods. While it is good to know how often threads are beingpaused for Garbage Collection, visualizing that can distract from non-GCsynchronization. To view either the Synchronization of Memory Management profile reports, click on their respective labels under Visible Timeline Profile, in the lower left hand corner of the Threads view. So with pausing for Garbage Collection now categorized as MemoryManagement, the Synchronization profile report does a better job on reportingwhere the threads in the process were actually synchronizing.
i like old delete and new keywords style! i use new and Dispose or collect in Managed applications!