Class 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.

    • 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)