public class SynchronizedRef extends SynchronizedVariable
Modifier and Type | Field and Description |
---|---|
protected java.lang.Object |
value_
The maintained reference
|
lock_
Constructor and Description |
---|
SynchronizedRef(java.lang.Object initialValue)
Create a SynchronizedRef initially holding the given reference
and using its own internal lock.
|
SynchronizedRef(java.lang.Object initialValue,
java.lang.Object lock)
Make a new SynchronizedRef with the given initial value,
and using the supplied lock.
|
Modifier and Type | Method and Description |
---|---|
boolean |
commit(java.lang.Object assumedValue,
java.lang.Object newValue)
Set value to newValue only if it is currently assumedValue.
|
java.lang.Object |
get()
Return the current value
|
java.lang.Object |
set(java.lang.Object newValue)
Set to newValue.
|
java.lang.Object |
swap(SynchronizedRef other)
Atomically swap values with another SynchronizedRef.
|
execute, getLock
public SynchronizedRef(java.lang.Object initialValue)
public SynchronizedRef(java.lang.Object initialValue, java.lang.Object lock)
public final java.lang.Object get()
public java.lang.Object set(java.lang.Object newValue)
public boolean commit(java.lang.Object assumedValue, java.lang.Object newValue)
public java.lang.Object swap(SynchronizedRef other)