Sdílet prostřednictvím


AtomicReferenceFieldUpdater.GetAndUpdate(Object, IUnaryOperator) Method

Definition

Atomically updates (with memory effects as specified by VarHandle#compareAndSet) the field of the given object managed by this updater with the results of applying the given function, returning the previous value.

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

Parameters

obj
Object

An object whose field to get and set

updateFunction
IUnaryOperator

a side-effect-free function

Returns

the previous value

Attributes

Remarks

Atomically updates (with memory effects as specified by VarHandle#compareAndSet) the field of the given object managed by this updater with the results of applying the given function, returning the previous value. The function should be side-effect-free, since it may be re-applied when attempted updates fail due to contention among threads.

Added in 1.8.

Java documentation for java.util.concurrent.atomic.AtomicReferenceFieldUpdater.getAndUpdate(T, java.util.function.UnaryOperator<V>).

Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.

Applies to