scala.concurrent.stm
InTxn
trait
InTxn
extends InTxnEnd
Abstract Value Members
-
def
afterCommit
(handler: (Status) ⇒ Unit): Unit
-
def
afterCompletion
(handler: (Status) ⇒ Unit): Unit
-
def
afterRollback
(handler: (Status) ⇒ Unit): Unit
-
def
beforeCommit
(handler: (InTxn) ⇒ Unit): Unit
-
-
def
retry
(): Nothing
-
def
retryFor
(timeoutNanos: Long): Unit
-
def
rollback
(cause: RollbackCause): Nothing
-
-
def
setExternalDecider
(decider: ExternalDecider): Unit
-
def
status
: Status
-
def
whileCommitting
(handler: (InTxnEnd) ⇒ Unit): Unit
-
def
whilePreparing
(handler: (InTxnEnd) ⇒ Unit): Unit
Concrete Value Members
-
def
!=
(arg0: AnyRef): Boolean
-
def
!=
(arg0: Any): Boolean
-
def
##
(): Int
-
def
==
(arg0: AnyRef): Boolean
-
def
==
(arg0: Any): Boolean
-
def
asInstanceOf
[T0]
: T0
-
def
clone
(): AnyRef
-
def
eq
(arg0: AnyRef): Boolean
-
def
equals
(arg0: Any): Boolean
-
def
finalize
(): Unit
-
def
getClass
(): java.lang.Class[_]
-
def
hashCode
(): Int
-
def
isInstanceOf
[T0]
: Boolean
-
def
ne
(arg0: AnyRef): Boolean
-
def
notify
(): Unit
-
def
notifyAll
(): Unit
-
def
synchronized
[T0]
(arg0: ⇒ T0): T0
-
def
toString
(): String
-
def
wait
(): Unit
-
def
wait
(arg0: Long, arg1: Int): Unit
-
def
wait
(arg0: Long): Unit
Inherited from AnyRef
Inherited from Any
The presence of an implicit
InTxn
instance grants the caller permission to perform transactional reads and writes onRef
instances, as well as permission to callobject Txn
methods that require anInTxnEnd
.InTxn
instances themselves might be reused by the STM, useTxn.currentLevel
orTxn.rootLevel
to get aTxn.NestingLevel
if you need to track an individual execution attempt.