public class GenRCCollector extends RCBaseCollector
| Modifier and Type | Field and Description |
|---|---|
private GenRCModifiedProcessor |
modProcessor |
private ExplicitFreeListLocal |
rc |
private GenRCFindRootSetTraceLocal |
rootTrace |
newRootBuffersanityLocalgrouplog| Constructor and Description |
|---|
GenRCCollector() |
| Modifier and Type | Method and Description |
|---|---|
Address |
allocCopy(ObjectReference original,
int bytes,
int align,
int offset,
int allocator)
Allocate space for copying an object (this method does not
copy the object, it only allocates space)
|
void |
collectionPhase(short phaseId,
boolean primary)
Perform a (local, i.e.per-collector) collection phase.
|
protected TransitiveClosure |
getModifiedProcessor() |
protected TraceLocal |
getRootTrace() |
void |
postCopy(ObjectReference object,
ObjectReference typeRef,
int bytes,
int allocator)
Perform any post-copy actions.
|
collect, getCurrentTrace, getModBuffer, globalconcurrentCollect, concurrentCollectionPhaseparallelWorkerCount, parallelWorkerOrdinal, park, rendezvous, runcopyCheckAllocator, getId, getLog, initCollectorprivate final GenRCFindRootSetTraceLocal rootTrace
private final GenRCModifiedProcessor modProcessor
private final ExplicitFreeListLocal rc
public GenRCCollector()
public final void collectionPhase(short phaseId, boolean primary)
collectionPhase in class RCBaseCollectorphaseId - The unique phase identifierprimary - Should this thread be used to execute any single-threaded
local operations?public final Address allocCopy(ObjectReference original, int bytes, int align, int offset, int allocator)
allocCopy in class CollectorContextoriginal - The object that is being copied.bytes - The size of the space to be allocated (in bytes)align - Required alignment for the copyoffset - Offset associated with the alignment.allocator - The allocator associated with this requestpublic final void postCopy(ObjectReference object, ObjectReference typeRef, int bytes, int allocator)
In this case nothing is required.
postCopy in class CollectorContextobject - The newly allocated object.typeRef - the type reference for the instance being created.bytes - The size of the space to be allocated (in bytes).allocator - The allocator statically assigned to this allocation.protected final TransitiveClosure getModifiedProcessor()
getModifiedProcessor in class RCBaseCollectorprotected final TraceLocal getRootTrace()
getRootTrace in class RCBaseCollector