AtomicReferenceArray.GetAndAccumulate(Int32, Object, IBinaryOperator) メソッド

定義

指定された関数を現在の値と指定された値に適用し、前の値を返した結果を使用して、インデックスiにある 要素をアトミックに更新します (でVarHandle#compareAndSet指定されたメモリ効果を使用)。

[Android.Runtime.Register("getAndAccumulate", "(ILjava/lang/Object;Ljava/util/function/BinaryOperator;)Ljava/lang/Object;", "", ApiSince=24)]
public Java.Lang.Object? GetAndAccumulate (int i, Java.Lang.Object? x, Java.Util.Functions.IBinaryOperator? accumulatorFunction);
[<Android.Runtime.Register("getAndAccumulate", "(ILjava/lang/Object;Ljava/util/function/BinaryOperator;)Ljava/lang/Object;", "", ApiSince=24)>]
member this.GetAndAccumulate : int * Java.Lang.Object * Java.Util.Functions.IBinaryOperator -> Java.Lang.Object

パラメーター

i
Int32

インデックス

x
Object

更新値

accumulatorFunction
IBinaryOperator

2 つの引数の副作用のない関数

戻り値

前の値

属性

注釈

指定された関数を現在の値と指定された値に適用し、前の値を返した結果を使用して、インデックスiにある 要素をアトミックに更新します (でVarHandle#compareAndSet指定されたメモリ効果を使用)。 関数は、スレッド間の競合が原因で更新の試行が失敗したときに再適用される可能性があるため、副作用のない状態にする必要があります。 関数は、インデックス i 位置の要素の現在の値を最初の引数として、指定された更新を 2 番目の引数として適用します。

1.8 で追加されました。

の Java ドキュメント java.util.concurrent.atomic.AtomicReferenceArray.getAndAccumulate(int, E, java.util.function.BinaryOperator<E>)

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

適用対象