Packages

  • package root
    Definition Classes
    root
  • package scala
    Definition Classes
    root
  • package concurrent
    Definition Classes
    scala
  • package stm
    Definition Classes
    concurrent
  • package impl
    Definition Classes
    stm
  • object STMImpl

    STMImpl gathers all of the functionality required to plug an STM implementation into scala.concurrent.stm.

    STMImpl gathers all of the functionality required to plug an STM implementation into scala.concurrent.stm. Only one implementation can be selected, because Refs 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:

    1. set the JVM system property "scala.stm.impl" to the name of a class that implements STMImpl; or

    2. arrange for STMImpl.select or STMImpl.trySelect to be called before any Refs 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".

    Definition Classes
    impl
  • Factory

trait Factory extends AnyRef

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Factory
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def createInstance(): STMImpl

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  10. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  11. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. final def notify(): Unit
    Definition Classes
    AnyRef
  14. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  15. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  16. def toString(): String
    Definition Classes
    AnyRef → Any
  17. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  18. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  19. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped