Class Tree Icons
The following Class Tree Icon list provides descriptions of the Class Tree View icons.
Model View Icons
The following Model View Icon list provides examples and descriptions of the icons.
Status Bar
Information on the commands available while a specific view is being active is displayed on the status bar. The commands appear as shown below, and they will change depending on the active view (pointed by cursor).
NOTE: The full identification of each project you run in the SUM-Enabled Mode will be seen in as: package.MainClass (process ID).
Process Information Panel
The Process Information panel, shown below, is located under the Smart Projects and contains the following information about the process.
It contains the following information:
-
Process ID: Identification number of process.
-
Duration: Process duration.
-
Time Started: When the dynamic analysis for the process was started.
-
Time Ended: When the process ended.
If the process is active, it will be highlighted on the Project List View and the Process Information panel will have one of the two radio buttons selected. The state of the Race Catcher analysis is controlled by this on–off analysis switch.
Analysis On - Off Button
Race Catcher Analysis can be switched from on to off and back for any active process.
A SUM Enabled process is active, i.e. is currently executed, when its name is displayed in the Project List View in bright color - bright Blue for SUM Enabled Process running with Analysis-On option and bright Ggreen for SUM Enabled Process running with Analysis-Off option.
INTERFACE
Understand UI Areas
The Race Catcher UI consists of several panels, three of which exist for each selected project. These three panels work as a synchronized trio to present a Class Tree, Model View, and a Source Code View.
This section provides you with a basic understanding of the Race Catcher UI panels and includes the following information.
Class Tree, Class Model, and Source Views
The Class Tree View, Class Model View, and Source Code View are dynamically interconnected as represented below:
That is, a selection within any of these three views will automatically generate a corresponding selection within the other two views.
Menu Bar
The menu bar is shown below as it is seen on the Race Catcher UI.
FILE MENU
File/Create Project Manually
Shortcut (<Ctrl>+N) - creates New project.
File/Add Classes to Project
Shortcut (<Ctrl>+A) - Adds more classes to a project
File/View/Remove Projects
Shortcut (<Ctrl>+V) - selects projects to View
File/Exit
Shortcut (<Ctrl>+Q). Closes Race Catcher.
VIEW MENU
Note: The shortcuts available for the View Menu commands are conveniently located next to each other on the left bottom portion of the keyboard "z","x","c","v".
These are the mouse position sencitive shortcuts visible on the task bar of hte UI. The File View shortcuts will be seen on the task bar when the mouse os over the Project List View panel or a Class Tree View panel.
View/Expand Selected Class
Alternatively, use shortcut key "x" on selected class to eXpand its view to details. For more information about expanding the Class Tree View, see eXpand Selected Class.
View/Collapse All Classes
Alternatively, use shortcut key "z" to collapse selected project classes to package level.
View/View Project Classes
Alternatively, use shortcut key "v" to View classes of selected project.
View/Collapse To Class Level
Alternatively, use shortcut key "c" (for Class level) view on selected project. Use it to switch from package level view or expanded classes view.
TOOLS MENU
Tools/Do Not Study List
Shortcut (<Shift>+Z). See Configure the Do Not Study List.
Tools/Notifications
Shortcut (<Shift>+N). Configure Race Catcher to notify you via e-mail about thread contentions within your analyzed by Race Catcher running applications. See Notifications.
Tools/Build Project Models
Shortcut "B". Use it after selecting a project.
Tools/Stop Building Project Models
Stop Building Project Models. Shortcut "N".
HELP MENU
Help/Help Contents
This document.
Help/Licensing
Request, activate, or verify the license to use Race Catcher. See Understanding Licensing.
Help/About
View Race Catcher application version, license agreement and the information on the components used in the link View Race Catcher Version.
Smart Projects
The Process tabs are located in the upper portion of the Race Catcher UI, as shown below. They correspond to the SUM-Enabled processes opened by Race Catcher UI.
Thread Contention Table
The information shown in the Thread Contention Table depends on the type of contention, as shown in the graphics below. Below is the information present in the case of a Race Condition.
-
Class Name: Class that owns the method that took a part in the race.
-
Method Name: Method that took a part in the race.
-
Method Signature: Byte code notation to help distinguishing between methods that have the same names within the same class.
-
Thread Name: Name of the thread involved in the race.
-
Shared Field: Location of memory that was the cause of contention.
-
Access Type: Each Method involved in the race has specific access to the field that was the target of the race contention. That access could be Read or Write or both, Read and Write (can be shown as Read/Write or Write/Read depending on the order of events in the Byte code).
Deadlock Contention Table
-
Class Name: Class that owns the method that took a part in the race.
-
Method Name: Method that took a part in the deadlock.
-
Method Signature: Byte code notation to help distinguishing between methods that have the same names within the same class.
-
Thread Name: Name of the thread involved in the race.
-
Monitor Owned: The lock that the thread has obtained while waiting on availability of another lock (Monitor Requested). This lock (Monitor Owned) is requested by another thread that is also locked.
-
Monitor Requested: The lock that the thread has requested while holding another lock (Monitor Owned),
Race Catcher Views
Project List View
The Project List View (shown as "A") is the panel on the left.
NOTE: The full identification of each project you run in the SUM-Enabled Mode will be seen in the Project List View as: package.class (process ID).
Contention List View
The Project List View (shown as "B") is the panel under the Project List View.
Process Information Panel
The Process Information Panel View (shown as "D") is described above.
Race Contention Table or Deadlock Contention Table
The Panel E will have in it either "Race Contention Table" or "Deadlock Contention Table" described above.
Class Tree View
The Class Tree View (shown as "C") is the panel in the middle row.
For a full list of icons and their descriptions, see Class Tree Icons. For information about the connection between the Source Code View, Class Tree View and Class Model View, see Class Tree, Class Model, and Source Code Views.
Class Model View
The Class Model View (shown as "F") is the panel on the right.
The Class Model View is a graphical representation of the class, including all the fields of the class and all the methods of the class, where methods are represented by their control flow diagram on the level of individual statements.
For a description of the icons used within the Class Model View of any specific class - right click on its Class Model View. The legends of all the icons used in that class will be explained.
For a full list of icons and their descriptions, see Model View Icons. For information about the connection between the Source Code View, Class Tree View and Class Model View, see Class Tree, Class Model, and Source Code Views.
Source Code View
The Source Code View (shown as "G") is the panel on the bottom.
NOTE: The different colors of highlighting in the Source Code View indicate the following:
Blue: The Shared Field highlighted here was accessed for Read.
Yellow The Shared Field highlighted here was accessed for Write or Read/Write.