Поделиться через


AtomicLongFieldUpdater.GetAndUpdate(Object, ILongUnaryOperator) Метод

Определение

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

[Android.Runtime.Register("getAndUpdate", "(Ljava/lang/Object;Ljava/util/function/LongUnaryOperator;)J", "", ApiSince=24)]
public long GetAndUpdate(Java.Lang.Object? obj, Java.Util.Functions.ILongUnaryOperator? updateFunction);
[<Android.Runtime.Register("getAndUpdate", "(Ljava/lang/Object;Ljava/util/function/LongUnaryOperator;)J", "", ApiSince=24)>]
member this.GetAndUpdate : Java.Lang.Object * Java.Util.Functions.ILongUnaryOperator -> int64

Параметры

obj
Object

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

updateFunction
ILongUnaryOperator

функция без побочных эффектов

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

предыдущее значение

Атрибуты

Комментарии

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

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

Документация по Java для java.util.concurrent.atomic.AtomicLongFieldUpdater.getAndUpdate(T, java.util.function.LongUnaryOperator).

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

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