|
Préférences
Moteurs de recherche
|
||||||||||||||||||||||
| JavaTM 2 Platform Std. Ed. v1.5.0
java.util.concurrent.atomic
|
|||||||||||||||||||||||
| Constructor Summary | |
|---|---|
protected |
AtomicReferenceFieldUpdater()
Protected do-nothing constructor for use by subclasses. |
| Method Summary | ||
|---|---|---|
abstract boolean |
compareAndSet(T obj,
V expect,
V update)
Atomically set the value of the field of the given object managed by this Updater to the given updated value if the current value == the expected value. |
|
abstract V |
get(T obj)
Get the current value held in the field by the given object. |
|
V |
getAndSet(T obj,
V newValue)
Set to the given value and return the old value. |
|
static
|
newUpdater(Class<U> tclass,
Class<W> vclass,
String fieldName)
Creates an updater for objects with the given field. |
|
abstract void |
set(T obj,
V newValue)
Set the field of the given object managed by this updater. |
|
abstract boolean |
weakCompareAndSet(T obj,
V expect,
V update)
Atomically set the value of the field of the given object managed by this Updater to the given updated value if the current value == the expected value. |
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
protected AtomicReferenceFieldUpdater()
| Method Detail |
|---|
public static <U,W> AtomicReferenceFieldUpdater<U,W> newUpdater(Class<U> tclass, Class<W> vclass, String fieldName)
tclass - the class of the objects holding the field.vclass - the class of the fieldfieldName - the name of the field to be updated.
IllegalArgumentException - if the field is not a volatile reference type.
RuntimeException - with a nested reflection-based
exception if the class does not hold field or is the wrong type.public abstract boolean compareAndSet(T obj, V expect, V update)
obj - An object whose field to conditionally setexpect - the expected valueupdate - the new value
public abstract boolean weakCompareAndSet(T obj, V expect, V update)
obj - An object whose field to conditionally setexpect - the expected valueupdate - the new value
public abstract void set(T obj, V newValue)
obj - An object whose field to setnewValue - the new valuepublic abstract V get(T obj)
obj - An object whose field to get
public V getAndSet(T obj, V newValue)
obj - An object whose field to get and setnewValue - the new value