org.mmtk.plan
Class StopTheWorldCollector
java.lang.Object
org.mmtk.plan.CollectorContext
org.mmtk.plan.ParallelCollector
org.mmtk.plan.SimpleCollector
org.mmtk.plan.StopTheWorldCollector
- All Implemented Interfaces:
- Constants
- Direct Known Subclasses:
- CopyMSCollector, GenCollector, ImmixCollector, MCCollector, MSCollector, RCBaseCollector, SSCollector
public abstract class StopTheWorldCollector
- extends SimpleCollector
This class (and its sub-classes) implement per-collector thread
behavior and state.
MMTk assumes that the VM instantiates instances of CollectorContext
in thread local storage (TLS) for each thread participating in
collection. Accesses to this state are therefore assumed to be
low-cost during mutator time.
- See Also:
CollectorContext
Fields inherited from interface org.mmtk.utility.Constants |
ALIGNMENT_VALUE, ARRAY_ELEMENT, BITS_IN_ADDRESS, BITS_IN_BYTE, BITS_IN_CHAR, BITS_IN_INT, BITS_IN_PAGE, BITS_IN_SHORT, BITS_IN_WORD, BYTES_IN_ADDRESS, BYTES_IN_BYTE, BYTES_IN_CHAR, BYTES_IN_INT, BYTES_IN_KBYTE, BYTES_IN_MBYTE, BYTES_IN_PAGE, BYTES_IN_SHORT, BYTES_IN_WORD, CARD_MASK, CARD_META_PAGES_PER_REGION, INSTANCE_FIELD, LOG_BITS_IN_ADDRESS, LOG_BITS_IN_BYTE, LOG_BITS_IN_CHAR, LOG_BITS_IN_INT, LOG_BITS_IN_PAGE, LOG_BITS_IN_SHORT, LOG_BITS_IN_WORD, LOG_BYTES_IN_ADDRESS, LOG_BYTES_IN_ADDRESS_SPACE, LOG_BYTES_IN_BYTE, LOG_BYTES_IN_CHAR, LOG_BYTES_IN_INT, LOG_BYTES_IN_KBYTE, LOG_BYTES_IN_MBYTE, LOG_BYTES_IN_PAGE, LOG_BYTES_IN_SHORT, LOG_BYTES_IN_WORD, LOG_CARD_BYTES, LOG_CARD_GRAIN, LOG_CARD_META_BYTES, LOG_CARD_META_PAGES, LOG_CARD_META_SIZE, LOG_CARD_UNITS, LOG_MIN_ALIGNMENT, MAX_ALIGNMENT, MAX_BYTES_PADDING, MAX_INT, MIN_ALIGNMENT, MIN_INT, SUPPORT_CARD_SCANNING |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
StopTheWorldCollector
public StopTheWorldCollector()
collect
public void collect()
- Perform garbage collection
- Overrides:
collect
in class ParallelCollector
concurrentCollect
public final void concurrentCollect()
- Perform some concurrent garbage collection
concurrentCollectionPhase
public void concurrentCollectionPhase(short phaseId)
- Perform some concurrent collection work.
- Parameters:
phaseId
- The unique phase identifier
global
private static StopTheWorld global()
- Returns:
- The active global plan as a
StopTheWorld
instance.