APIdia Launch Partner
Top Inners Fields Constructors Methods
sun.jvm.hotspot.oops

public Class ObjectHeap

extends Object
Class Inheritance
Imports
java.util.*, sun.jvm.hotspot.debugger.*, sun.jvm.hotspot.gc.shared.*, sun.jvm.hotspot.gc.epsilon.*, sun.jvm.hotspot.gc.g1.*, sun.jvm.hotspot.gc.shenandoah.*, sun.jvm.hotspot.gc.parallel.*, sun.jvm.hotspot.memory.*, sun.jvm.hotspot.runtime.*, sun.jvm.hotspot.types.*, sun.jvm.hotspot.utilities.*

Nested and Inner Type Summary

Modifier and TypeClass and Description
private static class
public static interface
ObjectHeap.ObjectFilter

an interface to filter objects while walking heap

Field Summary

Modifier and TypeField and Description
private final int
private final int
private final int
private static final boolean
private final int
private final int
private final int
private final int
private final int
private final int

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
private List<Address>
public boolean
equal(Oop o1, Oop o2)

Comparison operation for oops, either or both of which may be null

public int
public int
public int
public int
public int
public int
public int
public int
public int
public boolean
public void
iterate(HeapVisitor visitor)

The base heap iteration mechanism

public void
iterate(HeapVisitor visitor, ObjectHeap.ObjectFilter of)

iterate objects satisfying a specified ObjectFilter

private void
iterateExact(HeapVisitor visitor, final Klass k)

private void
public void
iterateObjectsOfKlass(HeapVisitor visitor, final InstanceKlass k, boolean includeSubtypes)

iterate objects of given Klass.

public void
iterateObjectsOfKlass(HeapVisitor visitor, final InstanceKlass k)

iterate objects of given Klass (objects of subtypes included)

public void
iterateRaw(RawHeapVisitor visitor)

This routine can be used to iterate through the heap at an extremely low level (stepping word-by-word) to provide the ability to do very low-level debugging

private void
iterateSubtypes(HeapVisitor visitor, final Klass k)

public Oop
newOop(OopHandle handle)

private void
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

booleanSizeback to summary
private final int booleanSize
byteSizeback to summary
private final int byteSize
charSizeback to summary
private final int charSize
DEBUGback to summary
private static final boolean DEBUG
doubleSizeback to summary
private final int doubleSize
floatSizeback to summary
private final int floatSize
intSizeback to summary
private final int intSize
longSizeback to summary
private final int longSize
oopSizeback to summary
private final int oopSize
shortSizeback to summary
private final int shortSize

Constructor Detail

ObjectHeapback to summary
public ObjectHeap(TypeDataBase db) throws WrongTypeException

Method Detail

collectLiveRegionsback to summary
private List<Address> collectLiveRegions()
equalback to summary
public boolean equal(Oop o1, Oop o2)

Comparison operation for oops, either or both of which may be null

getBooleanSizeback to summary
public int getBooleanSize()
getByteSizeback to summary
public int getByteSize()
getCharSizeback to summary
public int getCharSize()
getDoubleSizeback to summary
public int getDoubleSize()
getFloatSizeback to summary
public int getFloatSize()
getIntSizeback to summary
public int getIntSize()
getLongSizeback to summary
public int getLongSize()
getOopSizeback to summary
public int getOopSize()
getShortSizeback to summary
public int getShortSize()
isValidMethodback to summary
public boolean isValidMethod(Address handle)
iterateback to summary
public void iterate(HeapVisitor visitor)

The base heap iteration mechanism

iterateback to summary
public void iterate(HeapVisitor visitor, ObjectHeap.ObjectFilter of)

iterate objects satisfying a specified ObjectFilter

iterateExactback to summary
private void iterateExact(HeapVisitor visitor, final Klass k)
iterateLiveRegionsback to summary
private void iterateLiveRegions(List<Address> liveRegions, HeapVisitor visitor, ObjectHeap.ObjectFilter of)
iterateObjectsOfKlassback to summary
public void iterateObjectsOfKlass(HeapVisitor visitor, final InstanceKlass k, boolean includeSubtypes)

iterate objects of given Klass. param 'includeSubtypes' tells whether to include objects of subtypes or not

iterateObjectsOfKlassback to summary
public void iterateObjectsOfKlass(HeapVisitor visitor, final InstanceKlass k)

iterate objects of given Klass (objects of subtypes included)

iterateRawback to summary
public void iterateRaw(RawHeapVisitor visitor)

This routine can be used to iterate through the heap at an extremely low level (stepping word-by-word) to provide the ability to do very low-level debugging

iterateSubtypesback to summary
private void iterateSubtypes(HeapVisitor visitor, final Klass k)
newOopback to summary
public Oop newOop(OopHandle handle)
sortLiveRegionsback to summary
private void sortLiveRegions(List<Address> liveRegions)
sun.jvm.hotspot.oops back to summary

private Class ObjectHeap.LiveRegionsCollector

extends Object
implements LiveRegionsClosure
Class Inheritance
All Implemented Interfaces
sun.jvm.hotspot.gc.shared.LiveRegionsClosure

Field Summary

Modifier and TypeField and Description
private List<Address>

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
public void
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

liveRegionsback to summary
private List<Address> liveRegions

Constructor Detail

LiveRegionsCollectorback to summary
pack-priv LiveRegionsCollector(List<Address> l)

Method Detail

doLiveRegionsback to summary
public void doLiveRegions(LiveRegionsProvider lrp)

Implements sun.jvm.hotspot.gc.shared.LiveRegionsClosure.doLiveRegions.

Annotations
@Override
sun.jvm.hotspot.oops back to summary

public Interface ObjectHeap.ObjectFilter


an interface to filter objects while walking heap

Method Summary

Modifier and TypeMethod and Description
public boolean

Method Detail

canIncludeback to summary
public boolean canInclude(Oop obj)