Heap Walker Option Dialog

     


  The heap walker options dialog is displayed each time before the actual heap snapshot is taken.
  • Select recorded objects
    If this option is checked, the heap walker will restrict the heap snapshot to recorded objects only. In this way you can focus on the objects that have been created during a selected time span. If the option is unchecked, all objects on the heap will be shown (excluding any objects removed by the next option).
  • Remove unreferenced and weakly referenced objects
    If this option is checked, JProfiler will remove all objects from the heap that are not strongly referenced. These include:
    • unreferenced objects that are eligible for garbage collection
    • objects that are referenced only through soft, weak and phantom references
    • objects that are in the finalizer queue and will be garbage collected as soon as the finalizers have been run

    For strongly referenced objects, the heap walker will not display soft, weak and phantom references.

    This mode is preferable for memory leak detection, and is especially helpful to obtain useful information when showing the path to root for selected objects. Unchecking this option allows you to analyze the heap "as-is".

    <= 1.3 JVMs perform a full garbage collection before the heap snapshot is taken, so unreferenced objects can never occur even if the option is unchecked. With >= 1.4 JVMs, no garbage collection is performed prior to the snapshot.

    Note: With Java >= 1.5.0 (JVMTI), unreferenced objects are not shown by the heap walker. The dynamic memory views like the all objects view and the can therefore show higher instance counts.

  • Record primitive data (JVMPI only)
    Note: This option is only visible when you profile with Java <= 1.4.2 (JVMPI). With Java >= 1.5.0 (JVMTI), primitive data is never recorded, but requested on demand.

    If this option is checked, the heap walker will record primitive data and display string values in the reference graph as well as strings and values of primitive fields in the data view. Deselecting this option will save memory and is advisable if you experience memory problems when taking heap snapshot. If the option is unchecked, the data view will display N/A for primitive values.