- java.lang.Object
-
- com.ibm.j9ddr.vm29.j9.gc.GCBase
-
- com.ibm.j9ddr.vm29.j9.gc.MMObjectAccessBarrier
-
public abstract class MMObjectAccessBarrier extends GCBase
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
MMObjectAccessBarrier()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer
convertPointerFromToken(long token)
Converts token (e.g. compressed pointer value) into real heap pointer.abstract long
convertTokenFromPointer(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer pointer)
Converts real heap pointer into token (e.g. compressed pointer value).static MMObjectAccessBarrier
from()
Factory method to construct an appropriate object model.abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer
getFinalizeLink(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object)
Fetch the finalize link field of object.abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectMonitorPointer
getLockword(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object)
Return the lockword for the given object, or NULL if it does not have a lockword.abstract ObjectMonitor
getMonitor(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object)
Return an object representing the monitor for the given object, or NULL if it does not have a lockword/monitor.abstract I32
getObjectHashCode(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object)
Determine the basic hash code for the specified object.abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer
getOwnableSynchronizerLink(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object)
Fetch the ownableSynchronizer link field of object.abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer
getReferenceLink(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object)
Fetch the reference link field of the specified reference object.abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer
isObjectInOwnableSynchronizerList(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object)
check if the object in one of OwnableSynchronizerLists-
Methods declared in class com.ibm.j9ddr.vm29.j9.gc.GCBase
getExtensions, getJavaVM
-
-
-
-
Method Detail
-
from
public static MMObjectAccessBarrier from() throws CorruptDataException
Factory method to construct an appropriate object model.- Parameters:
structure
- the J9JavaVM structure to use- Returns:
- an instance of ObjectModel
- Throws:
CorruptDataException
-
getObjectHashCode
public abstract I32 getObjectHashCode(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object) throws CorruptDataException
Determine the basic hash code for the specified object.- Parameters:
object
- [in] the object to be hashed- Returns:
- the persistent, basic hash code for the object
- Throws:
CorruptDataException
-
getFinalizeLink
public abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer getFinalizeLink(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object) throws CorruptDataException
Fetch the finalize link field of object.- Parameters:
object
- [in] the object to read- Returns:
- the value stored in the object's finalizeLink field
- Throws:
CorruptDataException
-
getOwnableSynchronizerLink
public abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer getOwnableSynchronizerLink(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object) throws CorruptDataException
Fetch the ownableSynchronizer link field of object.- Parameters:
object
- [in] the object to read- Returns:
- the value stored in the object's ownableSynchronizerLink field
- Throws:
CorruptDataException
-
isObjectInOwnableSynchronizerList
public abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer isObjectInOwnableSynchronizerList(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object) throws CorruptDataException
check if the object in one of OwnableSynchronizerLists- Parameters:
object
- [in] the object pointer- Returns:
- the value stored in the object's reference link field if reference link field == J9ObjectPointer.NULL, it means the object isn't in the list
- Throws:
CorruptDataException
-
getReferenceLink
public abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer getReferenceLink(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object) throws CorruptDataException
Fetch the reference link field of the specified reference object.- Parameters:
object
- the object to read- Returns:
- the value stored in the object's reference link field
- Throws:
CorruptDataException
-
getLockword
public abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectMonitorPointer getLockword(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object) throws CorruptDataException
Return the lockword for the given object, or NULL if it does not have a lockword. This may return NULL, a flatlock, or an inflated monitor.- Throws:
CorruptDataException
-
getMonitor
public abstract ObjectMonitor getMonitor(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer object) throws CorruptDataException
Return an object representing the monitor for the given object, or NULL if it does not have a lockword/monitor.- Throws:
CorruptDataException
-
convertPointerFromToken
public abstract com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer convertPointerFromToken(long token)
Converts token (e.g. compressed pointer value) into real heap pointer.- Returns:
- the heap pointer value.
-
convertTokenFromPointer
public abstract long convertTokenFromPointer(com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer pointer)
Converts real heap pointer into token (e.g. compressed pointer value).- Returns:
- the compressed pointer value.
-
-