scala.concurrent.stm.impl
Type members
Classlikes
RefFactory
is responsible for creating concrete Ref
instances.
RefFactory
is responsible for creating concrete Ref
instances.
STMImpl
gathers all of the functionality required to plug an STM
implementation into scala.concurrent.stm
. Only one implementation can
be selected, because Ref
s and atomic blocks from different STM
implementations are not compatible. STMImpl.instance
returns the
STMImpl
instance that has been selected for this program execution.
STMImpl
gathers all of the functionality required to plug an STM
implementation into scala.concurrent.stm
. Only one implementation can
be selected, because Ref
s and atomic blocks from different STM
implementations are not compatible. STMImpl.instance
returns the
STMImpl
instance that has been selected for this program execution.
There are two ways to explicitly select the STMImpl
instance:
-
set the JVM system property "scala.stm.impl" to the name of a class that implements
STMImpl
; or -
arrange for
STMImpl.select
orSTMImpl.trySelect
to be called before anyRef
s are constructed and before any atomic blocks are executed.
Setting the JVM system property "scala.stm.impl" is equivalent to making a
call to STMImpl.select(System.getProperty("scala.stm.impl"))
before any
other STMImpl
selections.
If there is no explicitly selected STMImpl
instance and the classpath
contains a class scala.concurrent.stm.impl.DefaultFactory
that extends
scala.concurrent.stm.impl.STMImpl.Factory
, then an instance of that
class will be instantiated and used to generate the STMImpl
instance.
ScalaSTM implementations are encouraged to implement DefaultFactory
so
that if a user includes the implementation's JAR file, it will be
automatically selected.
If no explicit selection has been made and there is no definition of
scala.concurrent.stm.impl.DefaultFactory
present in the classpath, then
ScalaSTM will fall back to the reference implementation
"scala.concurrent.stm.ccstm.CCSTM".
- Authors
Nathan Bronson
- Companion
- class
STMImpl
gathers all of the functionality required to plug an STM
implementation into scala.concurrent.stm
. See the STMImpl
companion
object for information on controlling which STMImpl
is selected at run
time.
STMImpl
gathers all of the functionality required to plug an STM
implementation into scala.concurrent.stm
. See the STMImpl
companion
object for information on controlling which STMImpl
is selected at run
time.
- Authors
Nathan Bronson
- Companion
- object
TxnContext
captures the implementation-specific functionality of locating
the InTxn
dynamically bound to the current Thread
. Users should use the
lookup methods provided by object Txn
.
TxnContext
captures the implementation-specific functionality of locating
the InTxn
dynamically bound to the current Thread
. Users should use the
lookup methods provided by object Txn
.
- Authors
Nathan Bronson