AtomicReferenceFieldUpdater.CompareAndSet(Object, Object, Object) Method

Definition

Atomically sets the field of the given object managed by this updater to the given updated value if the current value == the expected value.

[Android.Runtime.Register("compareAndSet", "(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z", "GetCompareAndSet_Ljava_lang_Object_Ljava_lang_Object_Ljava_lang_Object_Handler")]
public abstract bool CompareAndSet (Java.Lang.Object? obj, Java.Lang.Object? expect, Java.Lang.Object? update);
[<Android.Runtime.Register("compareAndSet", "(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z", "GetCompareAndSet_Ljava_lang_Object_Ljava_lang_Object_Ljava_lang_Object_Handler")>]
abstract member CompareAndSet : Java.Lang.Object * Java.Lang.Object * Java.Lang.Object -> bool

Parameters

obj
Object

An object whose field to conditionally set

expect
Object

the expected value

update
Object

the new value

Returns

true if successful

Attributes

Remarks

Atomically sets the field of the given object managed by this updater to the given updated value if the current value == the expected value. This method is guaranteed to be atomic with respect to other calls to compareAndSet and set, but not necessarily with respect to other changes in the field.

Java documentation for java.util.concurrent.atomic.AtomicReferenceFieldUpdater.compareAndSet(T, V, 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