Most visited

Recently visited

Added in API level 1

AtomicIntegerArray

public class AtomicIntegerArray
extends Object implements Serializable

java.lang.Object
   ↳ java.util.concurrent.atomic.AtomicIntegerArray


一个int数组,其中元素可以自动更新。 有关原子变量属性的描述,请参阅java.util.concurrent.atomic包规范。

Summary

Public constructors

AtomicIntegerArray(int length)

创建给定长度的新AtomicIntegerArray,所有元素初始为零。

AtomicIntegerArray(int[] array)

创建一个新的AtomicIntegerArray,其长度与从给定数组中复制的所有元素相同。

Public methods

final int accumulateAndGet(int i, int x, IntBinaryOperator accumulatorFunction)

使用将给定函数应用于当前值和给定值的结果,以索引 i原子更新元素,返回更新的值。

final int addAndGet(int i, int delta)

将指定值以原子方式添加到索引为 i的元素。

final boolean compareAndSet(int i, int expect, int update)

如果当前值为 ==的预期值, ==位置 i处的元素设置为给定的更新值。

final int decrementAndGet(int i)

i处减少一个元素。

final int get(int i)

获取位置 i处的当前值。

final int getAndAccumulate(int i, int x, IntBinaryOperator accumulatorFunction)

使用将给定函数应用于当前值和给定值的结果,以索引 i原子更新元素,返回以前的值。

final int getAndAdd(int i, int delta)

将给定值以原子方式添加到索引为 i的元素。

final int getAndDecrement(int i)

原子法将索引为 i的元素减1。

final int getAndIncrement(int i)

在索引 i原子为单位递增一个元素。

final int getAndSet(int i, int newValue)

以原子方式将位置 i上的元素设置为给定值并返回旧值。

final int getAndUpdate(int i, IntUnaryOperator updateFunction)

使用给定函数的结果以索引 i原子更新元素,返回以前的值。

final int incrementAndGet(int i)

i增加一个元素。

final void lazySet(int i, int newValue)

最终将位置 i处的元素设置为给定值。

final int length()

返回数组的长度。

final void set(int i, int newValue)

将位置 i上的元素设置为给定值。

String toString()

返回数组当前值的字符串表示形式。

final int updateAndGet(int i, IntUnaryOperator updateFunction)

使用给定函数的结果原子更新索引 i处的元素,并返回更新后的值。

final boolean weakCompareAndSet(int i, int expect, int update)

如果当前值为 ==的预期值, ==位置 i处的元素设置为给定的更新值。

Inherited methods

From class java.lang.Object

Public constructors

AtomicIntegerArray

Added in API level 1
AtomicIntegerArray (int length)

创建给定长度的新AtomicIntegerArray,所有元素初始为零。

Parameters
length int: the length of the array

AtomicIntegerArray

Added in API level 1
AtomicIntegerArray (int[] array)

创建一个新的AtomicIntegerArray,其长度与从给定数组中复制的所有元素相同。

Parameters
array int: the array to copy elements from
Throws
NullPointerException if array is null

Public methods

accumulateAndGet

Added in API level 24
int accumulateAndGet (int i, 
                int x, 
                IntBinaryOperator accumulatorFunction)

使用将给定函数应用于当前值和给定值的结果,以索引i原子更新元素,返回更新的值。 该函数应该是无副作用的,因为当尝试更新由于线程之间的争用而失败时,它可能会被重新应用。 该函数以索引i处的当前值作为其第一个参数,并将给定的更新作为第二个参数来应用。

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

addAndGet

Added in API level 1
int addAndGet (int i, 
                int delta)

将给定值以原子方式添加到索引为 i的元素。

Parameters
i int: the index
delta int: the value to add
Returns
int the updated value

compareAndSet

Added in API level 1
boolean compareAndSet (int i, 
                int expect, 
                int update)

如果当前值 ==为期望值, i原子方式将位置 i上的元素设置为给定的更新值。

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.

decrementAndGet

Added in API level 1
int decrementAndGet (int i)

原子减少一个索引为 i的元素。

Parameters
i int: the index
Returns
int the updated value

get

Added in API level 1
int get (int i)

获取位置 i的当前值。

Parameters
i int: the index
Returns
int the current value

getAndAccumulate

Added in API level 24
int getAndAccumulate (int i, 
                int x, 
                IntBinaryOperator accumulatorFunction)

将指定函数应用于当前值和给定值的结果以i方式更新索引i处的元素,并返回以前的值。 该函数应该是无副作用的,因为当尝试更新由于线程之间的争用而失败时,它可能会被重新应用。 该函数的索引为i ,当前值为第一个参数,给定的更新为第二个参数。

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

getAndAdd

Added in API level 1
int getAndAdd (int i, 
                int delta)

将给定值以原子方式添加到索引 i处的元素。

Parameters
i int: the index
delta int: the value to add
Returns
int the previous value

getAndDecrement

Added in API level 1
int getAndDecrement (int i)

i处减少一个元素。

Parameters
i int: the index
Returns
int the previous value

getAndIncrement

Added in API level 1
int getAndIncrement (int i)

i增加一个元素。

Parameters
i int: the index
Returns
int the previous value

getAndSet

Added in API level 1
int getAndSet (int i, 
                int newValue)

以原子方式将位置 i上的元素设置为给定值并返回旧值。

Parameters
i int: the index
newValue int: the new value
Returns
int the previous value

getAndUpdate

Added in API level 24
int getAndUpdate (int i, 
                IntUnaryOperator updateFunction)

使用给定函数的结果原子更新索引i处的元素,并返回以前的值。 该函数应该是无副作用的,因为当尝试更新由于线程之间的争用而失败时,它可能会被重新应用。

Parameters
i int: the index
updateFunction IntUnaryOperator: a side-effect-free function
Returns
int the previous value

incrementAndGet

Added in API level 1
int incrementAndGet (int i)

i增加一个元素。

Parameters
i int: the index
Returns
int the updated value

lazySet

Added in API level 9
void lazySet (int i, 
                int newValue)

最终将位置 i处的元素设置为给定值。

Parameters
i int: the index
newValue int: the new value

length

Added in API level 1
int length ()

返回数组的长度。

Returns
int the length of the array

set

Added in API level 1
void set (int i, 
                int newValue)

将位置 i上的元素设置为给定值。

Parameters
i int: the index
newValue int: the new value

toString

Added in API level 1
String toString ()

返回数组当前值的字符串表示形式。

Returns
String the String representation of the current values of array

updateAndGet

Added in API level 24
int updateAndGet (int i, 
                IntUnaryOperator updateFunction)

使用给定函数的结果原子更新索引i处的元素,并返回更新后的值。 该函数应该是无副作用的,因为当尝试更新由于线程之间的争用而失败时,它可能会被重新应用。

Parameters
i int: the index
updateFunction IntUnaryOperator: a side-effect-free function
Returns
int the updated value

weakCompareAndSet

Added in API level 1
boolean weakCompareAndSet (int i, 
                int expect, 
                int update)

如果当前值 ==为期望值, ==位置 i处的元素设置为给定的更新值。

May fail spuriously and does not provide ordering guarantees ,所以只有很少的 compareAndSet替代选择。

Parameters
i int: the index
expect int: the expected value
update int: the new value
Returns
boolean true if successful

Hooray!