org.mmtk.plan
Class SimpleCollector
java.lang.Object
org.mmtk.plan.CollectorContext
org.mmtk.plan.ParallelCollector
org.mmtk.plan.SimpleCollector
- All Implemented Interfaces:
- Constants
- Direct Known Subclasses:
- ConcurrentCollector, StopTheWorldCollector
public abstract class SimpleCollector
- extends ParallelCollector
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 |
Method Summary |
void |
collectionPhase(short phaseId,
boolean primary)
Perform a (local, i.e.per-collector) collection phase. |
private static Simple |
global()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
sanityLocal
protected final SanityCheckerLocal sanityLocal
- Used for sanity checking.
SimpleCollector
public SimpleCollector()
collectionPhase
public void collectionPhase(short phaseId,
boolean primary)
- Perform a (local, i.e.per-collector) collection phase.
- Overrides:
collectionPhase
in class ParallelCollector
- Parameters:
phaseId
- The unique phase identifierprimary
- Should this thread be used to execute any single-threaded
local operations?
global
private static Simple global()
- Returns:
- The active global plan as a
Simple
instance.