Modifier and Type | Field and Description |
---|---|
static int |
ALLOC_NURSERY |
static int |
ALLOC_RC |
static int |
NURSERY |
static CopySpace |
nurserySpace
The nursery space is where all new objects are allocated by default
|
backupTrace, BT_CLOSURE, BUILD_FOR_GENRC, CC_BACKUP_TRACE, CC_ENABLED, ccForceFull, decPool, genRCCollection, genRCCollectionPhase, genRCRootClosurePhase, modPool, newRootPool, oldRootPool, performCycleCollection, PROCESS_DECBUFFER, PROCESS_MODBUFFER, PROCESS_NEWROOTBUFFER, PROCESS_OLDROOTBUFFER, rcloSpace, rcSpace, REF_COUNT, REF_COUNT_LOS, refCountCollection, refCountCollectionPhase, refCountRootClosurePhase, rootTrace
postSanityPhase, preSanityPhase
CLOSURE, collection, collectionAttempt, COMPLETE, completeClosurePhase, FINALIZABLE, finishPhase, FORWARD, FORWARD_FINALIZABLE, FORWARD_REFS, forwardPhase, INITIATE, initPhase, PHANTOM_REFS, POST_SANITY_PLACEHOLDER, PRE_SANITY_PLACEHOLDER, PREPARE, PREPARE_STACKS, prepareStacks, refTypeClosurePhase, RELEASE, rootClosurePhase, ROOTS, SANITY_BUILD_TABLE, SANITY_CHECK_TABLE, SANITY_COPY_ROOTS, SANITY_PREPARE, SANITY_RELEASE, SANITY_ROOTS, SANITY_SET_POSTGC, SANITY_SET_PREGC, sanityBuildPhase, sanityCheckPhase, SET_COLLECTION_KIND, SOFT_REFS, STACK_ROOTS, WEAK_REFS, WEAK_TRACK_REFS
ALLOC_CODE, ALLOC_COLD_CODE, ALLOC_DEFAULT, ALLOC_GCSPY, ALLOC_HOT_CODE, ALLOC_IMMORTAL, ALLOC_LARGE_CODE, ALLOC_LOS, ALLOC_NON_MOVING, ALLOC_NON_REFERENCE, ALLOC_PRIMITIVE_LOS, ALLOC_STACK, allocationSiteCount, ALLOCATORS, concurrentWorkers, controlCollectorContext, DEFAULT_MAX_NURSERY, DEFAULT_MIN_NURSERY, DEFAULT_SITE, defaultCollectorContext, emergencyCollection, GATHER_WRITE_BARRIER_STATS, GC_PREPARE, GC_PROPER, IMMORTAL, immortalSpace, insideHarness, internalTriggeredCollection, LARGE_CODE, largeCodeSpace, lastInternalTriggeredCollection, LOS, loSpace, MAX_NON_LOS_COPY_BYTES, MAX_NON_LOS_DEFAULT_ALLOC_BYTES, MAX_NON_LOS_NONMOVING_ALLOC_BYTES, META, metaDataSpace, NEEDS_LOG_BIT_IN_HEADER, NON_MOVING, NON_PARTICIPANT, nonMovingSpace, NOT_IN_GC, parallelWorkers, pretenureThreshold, SANITY, sanityChecker, sanitySpace, SCAN_BOOT_IMAGE, SMALL_CODE, smallCodeSpace, stacksPrepared, totalTime, USE_CODE_SPACE, userTriggeredCollection, VM_SPACE, vmSpace
Constructor and Description |
---|
GenRC() |
Modifier and Type | Method and Description |
---|---|
void |
collectionPhase(short phaseId)
Perform a (global) collection phase.
|
boolean |
collectionRequired(boolean spaceFull,
Space space)
This method controls the triggering of a GC.
|
void |
fullyBooted() |
int |
getCollectionReserve()
Return the number of pages reserved for copying.
|
int |
getPagesAvail()
Return the number of pages available for allocation, assuming
all future allocation is to the nursery.
|
boolean |
willNeverMove(ObjectReference object)
Can this object ever move.
|
getPagesUsed, isRCObject, lastCollectionFullHeap, processOptions, registerSpecializedMethods, sanityExpectedRC, sanityLinearScan, setBuildTimeGCByte
replacePhase, replacePlaceholderPhase, switchNurseryZeroingApproach
availableMemory, bootTimeWriteBarrier, concurrentCollectionRequired, determineThreadCount, enableAllocation, enableCollection, forceFullHeapCollection, freeMemory, gcInProgress, gcInProgressProper, getAllocationSite, getPagesReserved, getSpecializedScanClass, getTotalPages, handleUserCollectionRequest, harnessBegin, harnessEnd, insertPhaseAfter, isCurrentGCNursery, isEmergencyCollection, isInitialized, isInternalTriggeredCollection, isUserTriggeredCollection, lastCollectionWasExhaustive, loadObjectReference, logPoll, notifyExit, poll, preCollectorSpawn, printDetailedTiming, printPostStats, printPreStats, printUsedPages, reservedMemory, resetCollectionTrigger, setGCStatus, spawnCollectorThreads, stacksPrepared, startGCspyServer, storeObjectReference, stressTestGCRequired, totalMemory, triggerInternalCollectionRequest, usedMemory
public static final int ALLOC_NURSERY
public static final int ALLOC_RC
public static final CopySpace nurserySpace
public static final int NURSERY
public GenRC()
public final void collectionPhase(short phaseId)
collectionPhase
in class RCBase
phaseId
- The unique id of the phase to perform.public final boolean collectionRequired(boolean spaceFull, Space space)
Plan
true
to trigger a collection.collectionRequired
in class Plan
spaceFull
- Space request failed, must recover pages within 'space'.space
- TODOtrue
if a collection is requested by the plan.public int getPagesAvail()
getPagesAvail
in class Plan
public final int getCollectionReserve()
getCollectionReserve
in class Plan
public boolean willNeverMove(ObjectReference object)
Plan
willNeverMove
in class Plan
object
- The object in questiontrue
if it is not possible that the object will ever move.public void fullyBooted()
fullyBooted
in class Plan