語言

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

兩個參數的無副作用函數

傳回

先前的數值

屬性

備註

以原子方式更新(並依指定 VarHandle#compareAndSet記憶體效果)更新由此更新器管理的物件欄位,並根據該函式對當前值與給定值的結果,回傳先前的值。 此函式應無副作用,因為當嘗試更新因執行緒間爭用失敗時,可重新套用此功能。 函式以當前值作為第一個參數,並以該更新作為第二個參數套用。

新增於1.8版本。

Java 文件 java.util.concurrent.atomic.AtomicReferenceFieldUpdater.getAndAccumulate(T, V, java.util.function.BinaryOperator<V>)。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於