NonblockingSkipListVersionHistory

rescala.fullmv.FullMvStateBundle.NonblockingSkipListVersionHistory
See theNonblockingSkipListVersionHistory companion class

Attributes

Companion
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Value members

Concrete methods

Value parameters

pred

may be framing or executing

txn

must be phase-locked to framing if pred can be framing

Attributes

Returns

success if order was or became established, failure if reverse order was or became established concurrently

Value parameters

succ

is attempted to be phase-locked in framing, if not already ordered behind txn

txn

must be executing

Attributes

Returns

success if order was or became established, failure if it wasn't and succ started executing

def tryRecordRelationship(attemptPredecessor: FullMVTurn, succToRecord: FullMVTurn, defender: FullMVTurn, contender: FullMVTurn): Boolean

Value parameters

attemptPredecessor

intended predecessor transaction

contender

processing (and thus phase-locked) transaction

defender

encountered transaction

succToRecord

intended successor transactoin

Attributes

Returns

success if relation was established, false if reverse relation was established concurrently

Concrete fields

val DEBUG: Boolean
val changedUpdate: AtomicIntegerFieldUpdater[LinkWithCounters[Any]]
val finalSleeperUpdate: AtomicReferenceFieldUpdater[LinkWithCounters[Any], List[Thread]]
val pendingUpdate: AtomicIntegerFieldUpdater[LinkWithCounters[Any]]
val stableSleeperUpdate: AtomicReferenceFieldUpdater[LinkWithCounters[Any], List[Thread]]