public
class
AtomicIntegerArray
extends Object
implements
Serializable
java.lang.Object | |
↳ | java.util.concurrent.atomic.AtomicIntegerArray |
An int
array in which elements may be updated atomically.
See the java.util.concurrent.atomic
package
specification for description of the properties of atomic
variables.
Public constructors | |
---|---|
AtomicIntegerArray(int length)
Creates a new AtomicIntegerArray of the given length, with all elements initially zero. |
|
AtomicIntegerArray(int[] array)
Creates a new AtomicIntegerArray with the same length as, and all elements copied from, the given array. |
Public methods | |
---|---|
final
int
|
accumulateAndGet(int i, int x, IntBinaryOperator accumulatorFunction)
Atomically updates the element at index |
final
int
|
addAndGet(int i, int delta)
Atomically adds the given value to the element at index |
final
boolean
|
compareAndSet(int i, int expect, int update)
Atomically sets the element at position |
final
int
|
decrementAndGet(int i)
Atomically decrements by one the element at index |
final
int
|
get(int i)
Gets the current value at position |
final
int
|
getAndAccumulate(int i, int x, IntBinaryOperator accumulatorFunction)
Atomically updates the element at index |
final
int
|
getAndAdd(int i, int delta)
Atomically adds the given value to the element at index |
final
int
|
getAndDecrement(int i)
Atomically decrements by one the element at index |
final
int
|
getAndIncrement(int i)
Atomically increments by one the element at index |
final
int
|
getAndSet(int i, int newValue)
Atomically sets the element at position |
final
int
|
getAndUpdate(int i, IntUnaryOperator updateFunction)
Atomically updates the element at index |
final
int
|
incrementAndGet(int i)
Atomically increments by one the element at index |
final
void
|
lazySet(int i, int newValue)
Eventually sets the element at position |
final
int
|
length()
Returns the length of the array. |
final
void
|
set(int i, int newValue)
Sets the element at position |
String
|
toString()
Returns the String representation of the current values of array. |
final
int
|
updateAndGet(int i, IntUnaryOperator updateFunction)
Atomically updates the element at index |
final
boolean
|
weakCompareAndSet(int i, int expect, int update)
Atomically sets the element at position |
Inherited methods | |
---|---|
From
class
java.lang.Object
|
AtomicIntegerArray (int length)
Creates a new AtomicIntegerArray of the given length, with all elements initially zero.
Parameters | |
---|---|
length |
int :
the length of the array
|
AtomicIntegerArray (int[] array)
Creates a new AtomicIntegerArray with the same length as, and all elements copied from, the given array.
Parameters | |
---|---|
array |
int :
the array to copy elements from |
Throws | |
---|---|
NullPointerException |
if array is null |
int accumulateAndGet (int i, int x, IntBinaryOperator accumulatorFunction)
Atomically updates the element at index i
with the
results of applying the given function to the current and
given values, returning the updated value. The function should
be side-effect-free, since it may be re-applied when attempted
updates fail due to contention among threads. The function is
applied with the current value at index i
as its first
argument, and the given update as the second argument.
Parameters | |
---|---|
i |
int :
the index |
x |
int :
the update value |
accumulatorFunction |
IntBinaryOperator :
a side-effect-free function of two arguments |
Returns | |
---|---|
int |
the updated value |
int addAndGet (int i, int delta)
Atomically adds the given value to the element at index i
.
Parameters | |
---|---|
i |
int :
the index |
delta |
int :
the value to add |
Returns | |
---|---|
int |
the updated value |
boolean compareAndSet (int i, int expect, int update)
Atomically sets the element at position i
to the given
updated value if the current value ==
the expected value.
Parameters | |
---|---|
i |
int :
the index |
expect |
int :
the expected value |
update |
int :
the new value |
Returns | |
---|---|
boolean |
true if successful. False return indicates that
the actual value was not equal to the expected value.
|
int decrementAndGet (int i)
Atomically decrements by one the element at index i
.
Parameters | |
---|---|
i |
int :
the index |
Returns | |
---|---|
int |
the updated value |
int get (int i)
Gets the current value at position i
.
Parameters | |
---|---|
i |
int :
the index |
Returns | |
---|---|
int |
the current value |
int getAndAccumulate (int i, int x, IntBinaryOperator accumulatorFunction)
Atomically updates the element at index i
with the
results of applying the given function to the current and
given values, returning the previous value. The function should
be side-effect-free, since it may be re-applied when attempted
updates fail due to contention among threads. The function is
applied with the current value at index i
as its first
argument, and the given update as the second argument.
Parameters | |
---|---|
i |
int :
the index |
x |
int :
the update value |
accumulatorFunction |
IntBinaryOperator :
a side-effect-free function of two arguments |
Returns | |
---|---|
int |
the previous value |
int getAndAdd (int i, int delta)
Atomically adds the given value to the element at index i
.
Parameters | |
---|---|
i |
int :
the index |
delta |
int :
the value to add |
Returns | |
---|---|
int |
the previous value |
int getAndDecrement (int i)
Atomically decrements by one the element at index i
.
Parameters | |
---|---|
i |
int :
the index |
Returns | |
---|---|
int |
the previous value |
int getAndIncrement (int i)
Atomically increments by one the element at index i
.
Parameters | |
---|---|
i |
int :
the index |
Returns | |
---|---|
int |
the previous value |
int getAndSet (int i, int newValue)
Atomically sets the element at position i
to the given
value and returns the old value.
Parameters | |
---|---|
i |
int :
the index |
newValue |
int :
the new value |
Returns | |
---|---|
int |
the previous value |
int getAndUpdate (int i, IntUnaryOperator updateFunction)
Atomically updates the element at index i
with the results
of applying the given function, returning the previous value. The
function should be side-effect-free, since it may be re-applied
when attempted updates fail due to contention among threads.
Parameters | |
---|---|
i |
int :
the index |
updateFunction |
IntUnaryOperator :
a side-effect-free function |
Returns | |
---|---|
int |
the previous value |
int incrementAndGet (int i)
Atomically increments by one the element at index i
.
Parameters | |
---|---|
i |
int :
the index |
Returns | |
---|---|
int |
the updated value |
void lazySet (int i, int newValue)
Eventually sets the element at position i
to the given value.
Parameters | |
---|---|
i |
int :
the index |
newValue |
int :
the new value |
int length ()
Returns the length of the array.
Returns | |
---|---|
int |
the length of the array |
void set (int i, int newValue)
Sets the element at position i
to the given value.
Parameters | |
---|---|
i |
int :
the index |
newValue |
int :
the new value
|
String toString ()
Returns the String representation of the current values of array.
Returns | |
---|---|
String |
the String representation of the current values of array |
int updateAndGet (int i, IntUnaryOperator updateFunction)
Atomically updates the element at index i
with the results
of applying the given function, returning the updated value. The
function should be side-effect-free, since it may be re-applied
when attempted updates fail due to contention among threads.
Parameters | |
---|---|
i |
int :
the index |
updateFunction |
IntUnaryOperator :
a side-effect-free function |
Returns | |
---|---|
int |
the updated value |
boolean weakCompareAndSet (int i, int expect, int update)
Atomically sets the element at position i
to the given
updated value if the current value ==
the expected value.
May fail
spuriously and does not provide ordering guarantees, so is
only rarely an appropriate alternative to compareAndSet
.
Parameters | |
---|---|
i |
int :
the index |
expect |
int :
the expected value |
update |
int :
the new value |
Returns | |
---|---|
boolean |
true if successful
|