public class PSIMHeap extends GenericSGOIDHeap
GenericHeap.ElementInfoMarker
allocCounts, nextSgoid, sgoids
elementInfoMarker, internStrings, liveBitValue, markQueue, pinDownList, vm, weakRefs
Constructor and Description |
---|
PSIMHeap(Config config,
KernelState ks) |
Modifier and Type | Method and Description |
---|---|
ElementInfo |
get(int ref)
public getter to access but not change ElementInfos
|
Memento<Heap> |
getMemento() |
Memento<Heap> |
getMemento(MementoFactory factory) |
ElementInfo |
getModifiable(int ref)
public getter to access modifiable ElementInfos;
|
Iterator<ElementInfo> |
iterator()
return Iterator for all non-null ElementInfo entries
|
Iterable<ElementInfo> |
liveObjects() |
protected void |
remove(int ref)
internal remover used by generic sweep
|
void |
resetVolatiles() |
void |
restoreVolatiles() |
protected void |
set(int index,
ElementInfo ei)
internal setter used during allocation
|
int |
size() |
protected void |
sweep()
this implementation uses a generic ElementInfo iterator, it can be replaced
with a more efficient container specific version
|
getNewElementInfoIndex, getSUTAllocationContext, getSystemAllocationContext, initAllocationContext
addToInternStrings, addToPinDownList, checkConsistency, cleanUpDanglingReferences, cleanupWeakRefs, createArray, createElementInfo, createObject, gc, getArrayClassInfo, hasChanged, initializeStringObject, isAlive, isGcEnabled, isOutOfMemory, mark, markChanged, markStaticRoot, markThreadRoot, newArray, newInternString, newObject, newString, newString, newSystemArray, newSystemObject, newSystemString, newSystemThrowable, queueMark, registerPinDown, registerWeakReference, releasePinDown, removeFromPinDownList, setGcEnabled, setOutOfMemory, setStored, unmarkAll
public PSIMHeap(Config config, KernelState ks)
public int size()
protected void set(int index, ElementInfo ei)
GenericHeap
set
in class GenericHeap
public ElementInfo get(int ref)
GenericHeap
get
in interface Heap
get
in class GenericHeap
public ElementInfo getModifiable(int ref)
GenericHeap
getModifiable
in interface Heap
getModifiable
in class GenericHeap
protected void remove(int ref)
GenericHeap
remove
in class GenericHeap
protected void sweep()
GenericHeap
sweep
in class GenericHeap
public Iterator<ElementInfo> iterator()
GenericHeap
iterator
in interface Iterable<ElementInfo>
iterator
in class GenericHeap
public Iterable<ElementInfo> liveObjects()
liveObjects
in interface Heap
liveObjects
in class GenericHeap
public void resetVolatiles()
resetVolatiles
in interface Heap
resetVolatiles
in class GenericHeap
public void restoreVolatiles()
restoreVolatiles
in interface Heap
restoreVolatiles
in class GenericHeap
public Memento<Heap> getMemento(MementoFactory factory)
getMemento
in interface Heap
getMemento
in class GenericHeap
public Memento<Heap> getMemento()
getMemento
in interface Heap
getMemento
in class GenericHeap