Class SpeculativeGammaConfiguration
- java.lang.Object
-
- org.multiverse.stms.gamma.transactions.SpeculativeGammaConfiguration
-
public final class SpeculativeGammaConfiguration extends Object
The GammaStm uses a speculative mechanism (if enabled) to learn from executing transactions. Transactions start cheap and with a lot of features disabled, but once the speculation failed, the SpeculativeGammaConfguration is 'updated'. This class is immutable.- Author:
- Peter Veentjer.
-
-
Field Summary
Fields Modifier and Type Field Description boolean
abortOnlyDetected
boolean
commuteDetected
boolean
constructedObjectsDetected
boolean
ensureDetected
boolean
fat
boolean
listenersDetected
boolean
locksDetected
int
minimalLength
boolean
nonRefTypeDetected
boolean
orelseDetected
boolean
richMansConflictScanRequired
-
Constructor Summary
Constructors Constructor Description SpeculativeGammaConfiguration()
Creates a full speculative SpeculativeGammaConfiguration.SpeculativeGammaConfiguration(boolean isFat, boolean listenersDetected, boolean isCommuteDetected, boolean isNonRefTypeDetected, boolean isOrelseDetected, boolean locksDetected, boolean constructedObjectsDetected, boolean isRichMansConflictScanRequired, boolean isAbortOnlyDetected, boolean ensureDetected, int minimalLength)
-
Method Summary
-
-
-
Field Detail
-
listenersDetected
public final boolean listenersDetected
-
commuteDetected
public final boolean commuteDetected
-
orelseDetected
public final boolean orelseDetected
-
nonRefTypeDetected
public final boolean nonRefTypeDetected
-
fat
public final boolean fat
-
locksDetected
public final boolean locksDetected
-
constructedObjectsDetected
public final boolean constructedObjectsDetected
-
richMansConflictScanRequired
public final boolean richMansConflictScanRequired
-
abortOnlyDetected
public final boolean abortOnlyDetected
-
ensureDetected
public final boolean ensureDetected
-
minimalLength
public final int minimalLength
-
-
Constructor Detail
-
SpeculativeGammaConfiguration
public SpeculativeGammaConfiguration()
Creates a full speculative SpeculativeGammaConfiguration.
-
SpeculativeGammaConfiguration
public SpeculativeGammaConfiguration(boolean isFat, boolean listenersDetected, boolean isCommuteDetected, boolean isNonRefTypeDetected, boolean isOrelseDetected, boolean locksDetected, boolean constructedObjectsDetected, boolean isRichMansConflictScanRequired, boolean isAbortOnlyDetected, boolean ensureDetected, int minimalLength)
-
-
Method Detail
-
newWithMinimalLength
public SpeculativeGammaConfiguration newWithMinimalLength(int newMinimalLength)
-
newWithLocks
public SpeculativeGammaConfiguration newWithLocks()
-
newWithAbortOnly
public SpeculativeGammaConfiguration newWithAbortOnly()
-
newWithConstructedObjects
public SpeculativeGammaConfiguration newWithConstructedObjects()
-
newWithListeners
public SpeculativeGammaConfiguration newWithListeners()
-
newWithOrElse
public SpeculativeGammaConfiguration newWithOrElse()
-
newWithNonRefType
public SpeculativeGammaConfiguration newWithNonRefType()
-
newWithCommute
public SpeculativeGammaConfiguration newWithCommute()
-
newWithRichMansConflictScan
public SpeculativeGammaConfiguration newWithRichMansConflictScan()
-
newWithEnsure
public SpeculativeGammaConfiguration newWithEnsure()
-
-