AtomicReferenceFieldUpdater.GetAndAccumulate メソッド

定義

指定された関数を現在の値と指定された値に適用し、前の値を返した結果を使用して、このアップデーターによって管理されているオブジェクトのフィールドをアトミックに更新します (で指定された VarHandle#compareAndSetメモリ効果を使用)。

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

パラメーター

obj
Object

取得および設定するフィールドを持つ オブジェクト

x
Object

更新値

accumulatorFunction
IBinaryOperator

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

戻り値

前の値

属性

注釈

指定された関数を現在の値と指定された値に適用し、前の値を返した結果を使用して、このアップデーターによって管理されているオブジェクトのフィールドをアトミックに更新します (で指定された VarHandle#compareAndSetメモリ効果を使用)。 関数は、スレッド間の競合により更新が失敗したときに再適用される可能性があるため、副作用のない状態にする必要があります。 関数は、現在の値を最初の引数として適用し、指定された更新を 2 番目の引数として適用します。

1.8 で追加されました。

java.util.concurrent.atomic.AtomicReferenceFieldUpdater.getAndAccumulate(T, V, java.util.function.BinaryOperator<V>)Java ドキュメント。

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

適用対象