Class RootScanner

java.lang.Object
com.ibm.j9ddr.vm29.j9.RootScanner
Direct Known Subclasses:
AddressAwareRootScanner, DTFJJavaRuntime.DTFJRootScanner

public abstract class RootScanner extends Object
  • Constructor Details

  • Method Details

    • setStringTableAsRoot

      public void setStringTableAsRoot(boolean stringTableAsRoot)
    • setNurseryReferencesOnly

      public void setNurseryReferencesOnly(boolean nurseryReferencesOnly)
    • setNurseryReferencesPossibly

      public void setNurseryReferencesPossibly(boolean nurseryReferencesPossibly)
    • setIncludeRememberedSetReferences

      public void setIncludeRememberedSetReferences(boolean includeRememberedSetReferences)
    • setIncludeStackFrameClassReferences

      public void setIncludeStackFrameClassReferences(boolean includeStackFrameClassReferences)
    • setClassDataAsRoots

      public void setClassDataAsRoots(boolean classDataAsRoots)
    • setTrackVisibleStackFrameDepth

      public void setTrackVisibleStackFrameDepth(boolean trackVisibleStackFrameDepth)
    • setScanStackSlots

      public void setScanStackSlots(boolean scanStackSlots)
    • doClassSlot

      protected abstract void doClassSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer slot)
    • doClass

      protected abstract void doClass(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer clazz)
    • doClassLoader

      protected abstract void doClassLoader(com.ibm.j9ddr.vm29.pointer.generated.J9ClassLoaderPointer slot)
    • doWeakReferenceSlot

      protected abstract void doWeakReferenceSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot)
    • doSoftReferenceSlot

      protected abstract void doSoftReferenceSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot)
    • doPhantomReferenceSlot

      protected abstract void doPhantomReferenceSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot)
    • doFinalizableObject

      protected abstract void doFinalizableObject(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot)
    • doUnfinalizedObject

      protected abstract void doUnfinalizedObject(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot)
    • doOwnableSynchronizerObject

      protected abstract void doOwnableSynchronizerObject(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot)
    • doMonitorReference

      protected abstract void doMonitorReference(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectMonitorPointer objectMonitor)
    • doMonitorLookupCacheSlot

      protected abstract void doMonitorLookupCacheSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectMonitorPointer slot)
    • doJNIWeakGlobalReference

      protected abstract void doJNIWeakGlobalReference(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot)
    • doJNIGlobalReferenceSlot

      protected abstract void doJNIGlobalReferenceSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot)
    • doRememberedSlot

      protected abstract void doRememberedSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot)
    • doJVMTIObjectTagSlot

      protected abstract void doJVMTIObjectTagSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot)
    • doStringTableSlot

      protected abstract void doStringTableSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot)
    • doStringCacheTableSlot

      protected abstract void doStringCacheTableSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot)
    • doVMClassSlot

      protected abstract void doVMClassSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer slot)
    • doVMThreadSlot

      protected abstract void doVMThreadSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot)
    • doVMThreadJNISlot

      protected abstract void doVMThreadJNISlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot)
    • doVMThreadMonitorRecordSlot

      protected abstract void doVMThreadMonitorRecordSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot)
    • doNonCollectableObjectSlot

      protected abstract void doNonCollectableObjectSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot)
    • doMemorySpaceSlot

      protected abstract void doMemorySpaceSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot)
    • doStackSlot

      protected abstract void doStackSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot)
    • doClassSlot

      protected void doClassSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer slot, VoidPointer address)
    • doClass

      protected void doClass(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer clazz, VoidPointer address)
    • doClassLoader

      protected void doClassLoader(com.ibm.j9ddr.vm29.pointer.generated.J9ClassLoaderPointer slot, VoidPointer address)
    • doWeakReferenceSlot

      protected void doWeakReferenceSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot, VoidPointer address)
    • doSoftReferenceSlot

      protected void doSoftReferenceSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot, VoidPointer address)
    • doPhantomReferenceSlot

      protected void doPhantomReferenceSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot, VoidPointer address)
    • doMonitorLookupCacheSlot

      protected void doMonitorLookupCacheSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectMonitorPointer objectMonitor, ObjectMonitorReferencePointer slotAddress)
    • doJNIWeakGlobalReference

      protected void doJNIWeakGlobalReference(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot, VoidPointer address)
    • doJNIGlobalReferenceSlot

      protected void doJNIGlobalReferenceSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot, VoidPointer address)
    • doRememberedSlot

      protected void doRememberedSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot, VoidPointer address)
    • doJVMTIObjectTagSlot

      protected void doJVMTIObjectTagSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot, VoidPointer address)
    • doStringTableSlot

      protected void doStringTableSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot, VoidPointer address)
    • doStringCacheTableSlot

      protected void doStringCacheTableSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot, VoidPointer address)
    • doVMClassSlot

      protected void doVMClassSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer slot, VoidPointer address)
    • doVMThreadSlot

      protected void doVMThreadSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot, VoidPointer address)
    • doVMThreadJNISlot

      protected void doVMThreadJNISlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot, VoidPointer address)
    • doVMThreadMonitorRecordSlot

      protected void doVMThreadMonitorRecordSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot, VoidPointer address)
    • doNonCollectableObjectSlot

      protected void doNonCollectableObjectSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot, VoidPointer address)
    • doMemoryAreaSlot

      protected void doMemoryAreaSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot, VoidPointer address)
    • doStackSlot

      protected void doStackSlot(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer slot, WalkState walkState, VoidPointer stackLocation)
    • scanPermanentClasses

      protected void scanPermanentClasses() throws CorruptDataException
      Throws:
      CorruptDataException
    • scanAllSlots

      public void scanAllSlots() throws CorruptDataException
      Scan all slots which contain references into the heap.
      Throws:
      CorruptDataException
    • scanRoots

      public void scanRoots() throws CorruptDataException
      Scan all root set references from the VM into the heap. For all slots that are hard root references into the heap, the appropriate slot handler will be called.
      Throws:
      CorruptDataException
    • scanClearable

      public void scanClearable() throws CorruptDataException
      Scan all clearable root set references from the VM into the heap. For all slots that are clearable root references into the heap, the appropriate slot handler will be called.
      Throws:
      CorruptDataException
    • scanJVMTIObjectTagTables

      protected void scanJVMTIObjectTagTables() throws CorruptDataException
      Throws:
      CorruptDataException
    • scanNonCollectableObjects

      protected void scanNonCollectableObjects() throws CorruptDataException
      Throws:
      CorruptDataException
    • scanRememberedSet

      protected void scanRememberedSet() throws CorruptDataException
      Throws:
      CorruptDataException
    • scanJNIWeakGlobalReferences

      protected void scanJNIWeakGlobalReferences() throws CorruptDataException
      Throws:
      CorruptDataException
    • scanMonitorReferences

      protected void scanMonitorReferences() throws CorruptDataException
      Throws:
      CorruptDataException
    • scanUnfinalizedObjects

      protected void scanUnfinalizedObjects() throws CorruptDataException
      Throws:
      CorruptDataException
    • scanOwnableSynchronizerObjects

      protected void scanOwnableSynchronizerObjects() throws CorruptDataException
      Throws:
      CorruptDataException
    • scanMonitorLookupCaches

      protected void scanMonitorLookupCaches() throws CorruptDataException
      Throws:
      CorruptDataException
    • scanPhantomReferenceObjects

      protected void scanPhantomReferenceObjects() throws CorruptDataException
      Throws:
      CorruptDataException
    • scanSoftReferenceObjects

      protected void scanSoftReferenceObjects() throws CorruptDataException
      Throws:
      CorruptDataException
    • scanWeakReferenceObjects

      protected void scanWeakReferenceObjects() throws CorruptDataException
      Throws:
      CorruptDataException
    • scanStringTable

      protected void scanStringTable() throws CorruptDataException
      Throws:
      CorruptDataException
    • scanJNIGlobalReferences

      protected void scanJNIGlobalReferences() throws CorruptDataException
      Throws:
      CorruptDataException
    • scanFinalizableObjects

      protected void scanFinalizableObjects() throws CorruptDataException
      Throws:
      CorruptDataException
    • scanThreads

      protected void scanThreads() throws CorruptDataException
      Throws:
      CorruptDataException
    • scanClassLoaders

      protected void scanClassLoaders() throws CorruptDataException
      Throws:
      CorruptDataException
    • scanVMClassSlots

      protected void scanVMClassSlots() throws CorruptDataException
      Throws:
      CorruptDataException
    • scanClasses

      protected void scanClasses() throws CorruptDataException
      Throws:
      CorruptDataException
    • getReachability

      protected RootScanner.Reachability getReachability()