Язык

AtomicLongFieldUpdater.AccumulateAndGet Метод

Определение

Атомарно обновляет (с эффектами памяти, указанными VarHandle#compareAndSet) поле заданного объекта, управляемого этим обновлением, с результатами применения данной функции к текущим и заданным значениям, возвращая обновленное значение.

[Android.Runtime.Register("accumulateAndGet", "(Ljava/lang/Object;JLjava/util/function/LongBinaryOperator;)J", "", ApiSince=24)]
public long AccumulateAndGet(Java.Lang.Object? obj, long x, Java.Util.Functions.ILongBinaryOperator? accumulatorFunction);
[<Android.Runtime.Register("accumulateAndGet", "(Ljava/lang/Object;JLjava/util/function/LongBinaryOperator;)J", "", ApiSince=24)>]
member this.AccumulateAndGet : Java.Lang.Object * int64 * Java.Util.Functions.ILongBinaryOperator -> int64

Параметры

obj
Object

Объект, поле которого требуется получить и задать

x
Int64

Значение обновления

accumulatorFunction
ILongBinaryOperator

функция без побочных эффектов двух аргументов

Возвращаемое значение

обновленное значение

Атрибуты

Комментарии

Атомарно обновляет (с эффектами памяти, указанными VarHandle#compareAndSet) поле заданного объекта, управляемого этим обновлением, с результатами применения данной функции к текущим и заданным значениям, возвращая обновленное значение. Функция должна быть свободной от побочных эффектов, так как она может быть повторно применена при попытке обновления сбоем из-за состязания между потоками. Функция применяется с текущим значением в качестве первого аргумента и заданное обновление в качестве второго аргумента.

Добавлено в версии 1.8.

Java документации по java.util.concurrent.atomic.AtomicLongFieldUpdater.accumulateAndGet(T, long, java.util.function.LongBinaryOperator).

Части этой страницы — это изменения на основе работы, созданной и общей Project и используемых в соответствии с условиями, описанными в разделе "".

Применяется к