|
Préférences
Moteurs de recherche
|
||||||||||||||||||||||||||||||||||||
JavaTM 2 Platform Std. Ed. v1.6.0
java.util.concurrent.atomic
|
Constructor Summary | |
---|---|
protected |
AtomicIntegerFieldUpdater()
Protected do-nothing constructor for use by subclasses. |
Method Summary | ||
---|---|---|
int |
addAndGet(T obj,
int delta)
Atomically adds the given value to the current value of the field of the given object managed by this updater. |
|
abstract boolean |
compareAndSet(T obj,
int expect,
int update)
Atomically sets the field of the given object managed by this updater to the given updated value if the current value == the
expected value. |
|
int |
decrementAndGet(T obj)
Atomically decrements by one the current value of the field of the given object managed by this updater. |
|
abstract int |
get(T obj)
Gets the current value held in the field of the given object managed by this updater. |
|
int |
getAndAdd(T obj,
int delta)
Atomically adds the given value to the current value of the field of the given object managed by this updater. |
|
int |
getAndDecrement(T obj)
Atomically decrements by one the current value of the field of the given object managed by this updater. |
|
int |
getAndIncrement(T obj)
Atomically increments by one the current value of the field of the given object managed by this updater. |
|
int |
getAndSet(T obj,
int newValue)
Atomically sets the field of the given object managed by this updater to the given value and returns the old value. |
|
int |
incrementAndGet(T obj)
Atomically increments by one the current value of the field of the given object managed by this updater. |
|
abstract void |
lazySet(T obj,
int newValue)
Eventually sets the field of the given object managed by this updater to the given updated value. |
|
static
|
newUpdater(Class<U> tclass,
String fieldName)
Creates and returns an updater for objects with the given field. |
|
abstract void |
set(T obj,
int newValue)
Sets the field of the given object managed by this updater to the given updated value. |
|
abstract boolean |
weakCompareAndSet(T obj,
int expect,
int update)
Atomically sets 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 AtomicIntegerFieldUpdater()
Method Detail |
---|
public static <U> AtomicIntegerFieldUpdater<U> newUpdater(Class<U> tclass, String fieldName)
tclass
- the class of the objects holding the fieldfieldName
- the name of the field to be updated
IllegalArgumentException
- if the field is not a
volatile integer type
RuntimeException
- with a nested reflection-based
exception if the class does not hold field or is the wrong typepublic abstract boolean compareAndSet(T obj, int expect, int update)
==
the
expected value. This method is guaranteed to be atomic with respect to
other calls to compareAndSet
and set
, but not
necessarily with respect to other changes in the field.
obj
- An object whose field to conditionally setexpect
- the expected valueupdate
- the new value
ClassCastException
- if obj
is not an instance
of the class possessing the field established in the constructorpublic abstract boolean weakCompareAndSet(T obj, int expect, int update)
==
the
expected value. This method is guaranteed to be atomic with respect to
other calls to compareAndSet
and set
, but not
necessarily with respect to other changes in the field.
May fail spuriously
and does not provide ordering guarantees, so is only rarely an
appropriate alternative to compareAndSet
.
obj
- An object whose field to conditionally setexpect
- the expected valueupdate
- the new value
ClassCastException
- if obj
is not an instance
of the class possessing the field established in the constructorpublic abstract void set(T obj, int newValue)
compareAndSet
.
obj
- An object whose field to setnewValue
- the new valuepublic abstract void lazySet(T obj, int newValue)
obj
- An object whose field to setnewValue
- the new valuepublic abstract int get(T obj)
obj
- An object whose field to get
public int getAndSet(T obj, int newValue)
obj
- An object whose field to get and setnewValue
- the new value
public int getAndIncrement(T obj)
obj
- An object whose field to get and set
public int getAndDecrement(T obj)
obj
- An object whose field to get and set
public int getAndAdd(T obj, int delta)
obj
- An object whose field to get and setdelta
- the value to add
public int incrementAndGet(T obj)
obj
- An object whose field to get and set
public int decrementAndGet(T obj)
obj
- An object whose field to get and set
public int addAndGet(T obj, int delta)
obj
- An object whose field to get and setdelta
- the value to add