|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.mmtk.vm.Collection org.jikesrvm.mm.mmtk.Collection
public class Collection
Field Summary | |
---|---|
private static RVMThread.SoftHandshakeVisitor |
mutatorFlushVisitor
|
Fields inherited from class org.mmtk.vm.Collection |
---|
EXTERNAL_GC_TRIGGER, INTERNAL_GC_TRIGGER, INTERNAL_PHASE_GC_TRIGGER, RESOURCE_GC_TRIGGER, TRIGGER_REASONS, triggerReasons, UNKNOWN_GC_TRIGGER |
Fields inherited from interface org.jikesrvm.Constants |
---|
NOT_REACHED, REFLECTION_FPRS_BITS, REFLECTION_FPRS_MASK, REFLECTION_GPRS_BITS, REFLECTION_GPRS_MASK |
Fields inherited from interface org.jikesrvm.objectmodel.ThinLockConstants |
---|
TL_DEDICATED_U16_OFFSET, TL_DEDICATED_U16_SHIFT, TL_LOCK_COUNT_MASK, TL_LOCK_COUNT_SHIFT, TL_LOCK_COUNT_UNIT, TL_LOCK_ID_MASK, TL_LOCK_ID_SHIFT, TL_NUM_BITS_RC, TL_NUM_BITS_STAT, TL_NUM_BITS_TID, TL_STAT_BIASABLE, TL_STAT_FAT, TL_STAT_MASK, TL_STAT_SHIFT, TL_STAT_THIN, TL_THREAD_ID_MASK, TL_THREAD_ID_SHIFT, TL_UNLOCK_MASK |
Fields inherited from interface org.jikesrvm.objectmodel.TIBLayoutConstants |
---|
IMT_METHOD_SLOTS, NEEDS_DYNAMIC_LINK, TIB_ARRAY_ELEMENT_TIB_INDEX, TIB_DOES_IMPLEMENT_INDEX, TIB_FIRST_SPECIALIZED_METHOD_INDEX, TIB_FIRST_VIRTUAL_METHOD_INDEX, TIB_INTERFACE_DISPATCH_TABLE_INDEX, TIB_SUPERCLASS_IDS_INDEX, TIB_TYPE_INDEX |
Fields inherited from interface org.jikesrvm.HeapLayoutConstants |
---|
BAD_MAP_COMPRESSION, BOOT_IMAGE_CODE_END, BOOT_IMAGE_CODE_SIZE, BOOT_IMAGE_CODE_START, BOOT_IMAGE_DATA_END, BOOT_IMAGE_DATA_SIZE, BOOT_IMAGE_DATA_START, BOOT_IMAGE_END, BOOT_IMAGE_RMAP_END, BOOT_IMAGE_RMAP_START, MAX_BOOT_IMAGE_RMAP_SIZE, MAXIMUM_MAPPABLE |
Constructor Summary | |
---|---|
Collection()
|
Method Summary | |
---|---|
void |
blockForGC()
Block for the garbage collector. |
int |
getActiveThreads()
|
int |
getDefaultThreads()
|
void |
outOfMemory()
Fail with an out of memory error. |
void |
prepareMutator(MutatorContext m)
Prepare a mutator for collection. |
void |
requestMutatorFlush()
Request each mutator flush remembered sets. |
void |
resumeAllMutators()
Resume all mutators blocked for GC. |
static void |
scheduleFinalizerThread()
Schedule the finalizerThread, if there are objects to be finalized and the finalizerThread is on its queue (ie. currently idle). |
void |
spawnCollectorContext(CollectorContext context)
Spawn a thread to execute the supplied collector context. |
void |
stopAllMutators()
Stop all mutator threads. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private static RVMThread.SoftHandshakeVisitor mutatorFlushVisitor
Constructor Detail |
---|
public Collection()
Method Detail |
---|
public void spawnCollectorContext(CollectorContext context)
spawnCollectorContext
in class Collection
public int getDefaultThreads()
getDefaultThreads
in class Collection
public int getActiveThreads()
getActiveThreads
in class Collection
public void blockForGC()
Collection
blockForGC
in class Collection
public void outOfMemory()
outOfMemory
in class Collection
public final void prepareMutator(MutatorContext m)
Collection
prepareMutator
in class Collection
m
- the mutator to preparepublic void stopAllMutators()
Collection
Fixpoint until there are no threads that we haven't blocked. Fixpoint is needed to catch the (unlikely) case that a thread spawns another thread while we are waiting.
stopAllMutators
in class Collection
public void resumeAllMutators()
Collection
resumeAllMutators
in class Collection
public void requestMutatorFlush()
Collection
requestMutatorFlush
in class Collection
public static void scheduleFinalizerThread()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |