|
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