![]() Previous |
![]() Next |
This tabbed interface has the following three subtabs:
Top Blocking Locks, which lists the top locks blocking other threads.
Top Blocked Threads, which lists the top threads being blocked.
Top Blocking Threads, which lists the top threads blocking other threads from obtaining the lock.
Each table shows the information listed on Table: Blocking Threads Table Description.
Blocking Threads Table Description
Column | Description |
---|---|
Thread (Class on Top Blocking Locks table) |
The name of the thread (or class) blocking or being blocked, |
Count |
The number of times the thread (or class) blocked or was blocked during the period specified on the range navigator. Note that this is not the total number of times the thread was blocked; the granularity is decided by the threshold for this event. By default only blocking events that result in the thread being blocked for 20 milliseconds or longer will generate an event. |
Average |
The average duration the thread was blocked for the selected range. |
Total |
The total duration the thread was blocked for the selected range. |
You can use the filtering mechanism above the table to narrow the information shown in a table.
To filter a column:
Right-click the Filter Column drop-down control to open its menu and select the column you want to filter on, for example, Count.
The column name appears in the Filter Column field.
In the adjacent text box, enter the string for which you want to filter.
Normally, to lessen the impact on performance, matching is done using only simple Kleene star wildcards. A star (*
) will match zero or more occurrences of anything; for example:
8*
will match anything beginning with 8. *es
will match anything ending with es.
You can also match using regular expressions; however, resolution can take much longer with complex expressions and large amounts of data; for example:
regexp:(YC|Young Collect).*
will match anything starting with YC or Young Collect, such as YC Promotion Failed, Young Collection and Young Collector Nursery Snapshot.
You can also build logical expressions for columns with numerical values. For instance, for a column with counts, such as the one in Memory/allocation Allocation by Class table, the expression > 100 && < 500 will filter out the classes with more than 100 but less than 500 events.
The filter text entry field is case sensitive.
You can customize the Blocking Threads table by using the context menu to do the following:
Change the sort order of each column. See Changing the Sort Order of a Table Column.
Select which data to show by selecting from a list of available columns. See Selecting Columns to Show on a Table.
Copy the selection for pasting elsewhere, for example in a text editor, and configure how that data is to be stored on your clipboard. See Copying Data to the Clipboard.
Add and remove blocking threads to and from the operative set.