Unfinalized Objects

The number of objects with pending finalization, arranged by their type and sorted by the number of objects of each type. These are all objects with the finalize() method available, but not yet invoked.

Related Topics

Mark an Item for Search (page 178)

Find a Search Pattern (page 179)

Threads Histogram (page 152)

Unfinalized Objects (page 126)

Unfinalized Queue Growth (page 115)

Reference Graph TreeShows all live objects and references between them.Expanding the nodes shows which references a given object holds.

HPjmeter uses heuristics to detect soft or weak references and uses special symbols ~->for them, while the hard (regular) references are marked by ->. Double-click on an object to view additional information: all references to the object, and the number of bytes held in the heap by this object. This number is the total amount of bytes that could be reclaimed by garbage collection if all references to this object were nullified. This piece of information is sticky — once this value is calculated for an object, it will be displayed in the Reference Graph.

Displaying large reference graphs puts a lot of stress on the underlying Swing components, so please be patient when dealing with huge heap dumps.

Related Topics

Mark an Item for Search (page 178)

Find a Search Pattern (page 179)

Class Loaders (page 150)

Reference Sub-Trees by Size

This visualizer shows the cluster of objects that are directly or indirectly referenced from the root of the tree, along with the cumulative size of all the references.

This metric is similar to Reference Graph Tree, with the following differences:

You can see the amount of memory allocated to a sub-tree(a node and its contents) as well as to the node itself. The memory held by the node appears in parentheses ( ), and the memory held by the sub-tree appears in brackets [ ].

The table on the right side displays object and primitive values for any selected node object in the tree.

In Figure 8-19, an object of type VecTest3 is selected in the tree. The table on the right is showing the Attributes tab, which displays a list of the non-static fields in the object.

146 Using Visualizer Functions