The Active Locks displays information about the currently active critical sections and WaitForXXXObject calls in each thread of the application being monitored.
Read on, or click a part of the image below to jump straight to the help for that area.
The view shows information about critical sections currently locked or waiting for each known thread in the target application.
The display and controls are the same as the Locks Per Thread tab, except that here only currently active locks are listed, rather than all previously active critical sections.
In the example above information for seven threads are displayed, with each thread having with a summary header row identified by the ThreadId:nnn in the Address field.
Thread rows will be highlighted in the thread information colour (orange by default), or pale red , the stalled thread colour unless you customise these colours.
Each relevant critical section is shown once underneath each thread and the display can be sorted by different criteria by clicking on the appropriate column header.
The table highlights error and status conditions using the user defined lock colours. In the example above, yellow indicates a contention, and cyan for recursion.
Lines highlighted in grey denote an active status, meaning that the critical section has been entered.
Unlike the All Locks tab, critical sections where nothing of interest has happened are not displayed.
Any WaitForXXXObject calls used by each thread in the application are also listed.
There may not be any critical sections listed for a given thread.
The columns displayed in the Active Locks view are identical to the columns on the Locks Per Thread tab.
Note that like the Locks Per Thread, the thread header rows display different information to the critical section rows.
The Active Locks Settings dialog below, is identical to the Display Settings on the Locks Per Thread tab.
Like the display settings, the menu options are also the same as those on the Locks Per Thread tab.