const class std::AtomicRef
sys::Obj std::AtomicRef
AtomicRef is used to manage a object reference shared between actor/threads with atomic updates. Only immutable objects may be shared.
- compareAndSet
-
Bool compareAndSet(AtomicRef^T? expect, AtomicRef^T? update)
Atomically set the value to
update
if current value is equivalent to theexpect
value compared using===
operator. Return true if updated, or false if current value was not equal to the expected value. Throw NotImmutableErr ifupdate
is mutable. - getAndSet
-
AtomicRef^T? getAndSet(AtomicRef^T? val)
Atomically set the value and return the previous value. Throw NotImmutableErr if
val
is mutable. - make
-
new make(AtomicRef^T? val := null)
Construct with initial value. Throw NotImmutableErr if initialized to a mutable value.
- toStr
-
virtual override Str toStr()
Return
val.toStr
- val
-
AtomicRef^T? val
The current value. Throw NotImmutableErr if set to a mutable value.