The Active Objects tab allows you to view and examine synchronization objects that are currently active.
Read on, or click a part of the image below to jump straight to the help for that area.
The view shows information about all active synchronization objects.
Each object is listed with its callstack to enable you to drill down to the source code for the call.
When Thread Validator identifies miscellaneous error conditions, data about the conditions and callstack is displayed in this window.
That data can be filtered and restricted by watermarks to fine tune the displayed data.
Each item can be expanded with the button ( and then collapsed with the ) to show more detailed information:
•thread id and the name, if assigned
•timestamp
•the callstack for the item
Each line of the callstack shows:
•instruction address
•module name
•undecorated C++ function name
•source file and line number (if available) for the function
One or more parts of the callstack can be expanded or collapsed using the or to show the source code around the relevant line in the associated file.
If the source code can't be found, or the file location is invalid you'll be prompted for the file.
The line on which the allocation occurred is highlighted, e.g. green in this example:
To edit the source code, double click on any part of the lines of source code displayed or use Edit Source Code...
If the source file isn't found automatically, you'll be prompted to provide the location manually with the Find Source File dialog
You can scan, search or browse for the source location depending on how much of an idea you have of the location:
•Browse... uses an explorer to search manually
•Search All Drives... does a full scan of your computer, showing the Searching For Source Files dialog
You can stop the search at any time
If a file is found, the filename is entered at the top of the Find Source File dialog.
If multiple results are found, pick the best one from the results dialog that appears:
•Search Folder... prompts for a folder, and scans that using the same Searching For Source Files dialog as above
If multiple results are found, pick the best one from the results dialog (above)
Rather than repeatedly searching manually for locations, it's recommended to modify the automatic source file search paths:
•File Locations... shows the File Locations Settings dialog so you can change the automatic search paths
Changing the search paths to include additional source locations means you'll get prompted less.
The file locations settings dialog is identical to the File Locations page of the global settings dialog.
If you don't want to be prompted with this dialog, then uncheck the first option below
•Ask for location of file if file cannot be found in search paths shows this dialog each time you try to open a source file where the location is unknown
•Don't ask for location of file if line number is not valid stops this dialog from showing when line numbers are invalid, e.g. zero or negative
The default is not to ask in this case.
The amount of data in the main display can be reduced by watermarks.
Here you can choose two watermarks allowing only the data between them to be displayed.
•First Watermark Choose a watermark from the list Last Watermark Choose another watermark Refresh updates the data shown in the display
There are two permanent default watermarks, called First watermark (before anything else) and Last watermark (after anything else).
Attempting to choose a first watermark later than the last watermark, or vice-versa will result in the alternate watermark automatically updating.
•Display... show the Active Objects Display Settings dialog
Choose the types of data to display and whether the data should be grouped or displayed individually.
•Refresh refresh the list manually when you need to
•Group by callstack groups information by related callstack (default)
The number of items in an ungrouped table can get very long when there are many items with the same callstack.
The following popup menu is available over the data area to add bookmarks, watermarks and edit source code.
Menu actions apply to the function for the row at the menu-click location.
Bookmarks allow you to find a data item easily at a later date, while watermarks are used above to show only those items between two points in time.
•Add Bookmark... adds a bookmark for the selected item
•Add Watermark... adds a watermark for the selected item
Menu option: editing source code
•Edit Source Code... opens the default or preferred editor to edit the source code
Menu options: collapse / expand trace
•Collapse or Expand Trace simply shows and hides data item information, the same as using the or buttons
•Collapse or Expand All hides or shows all the available callstack information for every listed item