final class TRef[A] extends Serializable
A TRef
is a purely functional description of a mutable reference that can
be modified as part of a transactional effect. The fundamental operations of
a TRef
are set
and get
. set
transactionally sets the reference to a
new value. get
gets the current value of the reference.
NOTE: While TRef
provides the transactional equivalent of a mutable
reference, the value inside the TRef
should be immutable. For performance
reasons TRef
is implemented in terms of compare and swap operations rather
than synchronization. These operations are not safe for mutable values that
do not support concurrent access.
- Self Type
- TRef[A]
- Alphabetic
- By Inheritance
- TRef
- Serializable
- Serializable
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
get: USTM[A]
Retrieves the value of the
TRef
. -
def
getAndSet(a: A): USTM[A]
Sets the value of the
TRef
and returns the old value. -
def
getAndUpdate(f: (A) ⇒ A): USTM[A]
Updates the value of the variable and returns the old value.
-
def
getAndUpdateSome(f: PartialFunction[A, A]): USTM[A]
Updates some values of the variable but leaves others alone, returning the old value.
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
modify[B](f: (A) ⇒ (B, A)): USTM[B]
Updates the value of the variable, returning a function of the specified value.
-
def
modifySome[B](default: B)(f: PartialFunction[A, (B, A)]): USTM[B]
Updates the value of the variable, returning a function of the specified value.
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
set(a: A): USTM[Unit]
Sets the value of the
TRef
. -
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- TRef → AnyRef → Any
-
def
update(f: (A) ⇒ A): USTM[Unit]
Updates the value of the variable.
-
def
updateAndGet(f: (A) ⇒ A): USTM[A]
Updates the value of the variable and returns the new value.
-
def
updateSome(f: PartialFunction[A, A]): USTM[Unit]
Updates some values of the variable but leaves others alone.
-
def
updateSomeAndGet(f: PartialFunction[A, A]): USTM[A]
Updates some values of the variable but leaves others alone, returning the new value.
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()