Class GammaTxnPool
- java.lang.Object
-
- org.multiverse.stms.gamma.transactions.GammaTxnPool
-
- All Implemented Interfaces:
MultiverseConstants
,GammaConstants
public final class GammaTxnPool extends java.lang.Object implements GammaConstants
A pool for pooling GammaTxns.
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
enabled
private static boolean
ENABLED
private FatFixedLengthGammaTxn[]
poolFatFixedLength
private int
poolFatFixedLengthIndex
private FatMonoGammaTxn[]
poolFatMono
private int
poolFatMonoIndex
private FatVariableLengthGammaTxn[]
poolFatVariableLength
private int
poolFatVariableLengthIndex
private LeanFixedLengthGammaTxn[]
poolLeanFixedLength
private int
poolLeanFixedLengthIndex
private LeanMonoGammaTxn[]
poolLeanMono
private int
poolLeanMonoIndex
-
Fields inherited from interface org.multiverse.stms.gamma.GammaConstants
FAILURE, MASK_CONFLICT, MASK_SUCCESS, MASK_UNREGISTERED, REGISTRATION_DONE, REGISTRATION_NONE, REGISTRATION_NOT_NEEDED, TRANLOCAL_COMMUTING, TRANLOCAL_CONSTRUCTING, TRANLOCAL_READ, TRANLOCAL_WRITE, TRANSACTIONTYPE_FAT_FIXED_LENGTH, TRANSACTIONTYPE_FAT_MONO, TRANSACTIONTYPE_FAT_VARIABLE_LENGTH, TRANSACTIONTYPE_LEAN_FIXED_LENGTH, TRANSACTIONTYPE_LEAN_MONO, TX_ABORTED, TX_ACTIVE, TX_COMMITTED, TX_PREPARED, TYPE_BOOLEAN, TYPE_DOUBLE, TYPE_INT, TYPE_LONG, TYPE_REF, VERSION_UNCOMMITTED
-
Fields inherited from interface org.multiverse.MultiverseConstants
LOCKMODE_EXCLUSIVE, LOCKMODE_NONE, LOCKMODE_READ, LOCKMODE_WRITE, SHAKE_BUGS, SPIN_YIELD, TRACING_ENABLED
-
-
Constructor Summary
Constructors Constructor Description GammaTxnPool()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
put(GammaTxn tx)
Puts a GammaTxn in the pool.FatFixedLengthGammaTxn
takeFatFixedLength()
Takes a FatArrayGammaTxn from the pool.FatMonoGammaTxn
takeFatMono()
Takes a FatMonoGammaTxn from the pool.LeanFixedLengthGammaTxn
takeLeanFixedLength()
Takes a FatArrayGammaTxn from the pool.LeanMonoGammaTxn
takeLeanMono()
Takes a FatMonoGammaTxn from the pool.FatVariableLengthGammaTxn
takeMap()
Takes a FatArrayTreeGammaTxn from the pool.
-
-
-
Field Detail
-
ENABLED
private static final boolean ENABLED
-
enabled
private final boolean enabled
-
poolFatMono
private final FatMonoGammaTxn[] poolFatMono
-
poolFatMonoIndex
private int poolFatMonoIndex
-
poolFatFixedLength
private final FatFixedLengthGammaTxn[] poolFatFixedLength
-
poolFatFixedLengthIndex
private int poolFatFixedLengthIndex
-
poolLeanMono
private final LeanMonoGammaTxn[] poolLeanMono
-
poolLeanMonoIndex
private int poolLeanMonoIndex
-
poolLeanFixedLength
private final LeanFixedLengthGammaTxn[] poolLeanFixedLength
-
poolLeanFixedLengthIndex
private int poolLeanFixedLengthIndex
-
poolFatVariableLength
private final FatVariableLengthGammaTxn[] poolFatVariableLength
-
poolFatVariableLengthIndex
private int poolFatVariableLengthIndex
-
-
Method Detail
-
takeFatMono
public FatMonoGammaTxn takeFatMono()
Takes a FatMonoGammaTxn from the pool.- Returns:
- the taken FatMonoGammaTxn or null of none available.
-
takeFatFixedLength
public FatFixedLengthGammaTxn takeFatFixedLength()
Takes a FatArrayGammaTxn from the pool.- Returns:
- the taken FatArrayGammaTxn or null of none available.
-
takeLeanMono
public LeanMonoGammaTxn takeLeanMono()
Takes a FatMonoGammaTxn from the pool.- Returns:
- the taken FatMonoGammaTxn or null of none available.
-
takeLeanFixedLength
public LeanFixedLengthGammaTxn takeLeanFixedLength()
Takes a FatArrayGammaTxn from the pool.- Returns:
- the taken FatArrayGammaTxn or null of none available.
-
takeMap
public FatVariableLengthGammaTxn takeMap()
Takes a FatArrayTreeGammaTxn from the pool.- Returns:
- the taken FatArrayTreeGammaTxn or null of none available.
-
put
public void put(GammaTxn tx)
Puts a GammaTxn in the pool.- Parameters:
tx
- the GammaTxn to put in the pool.- Throws:
java.lang.NullPointerException
- if tx is null.
-
-