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