AtomicStampedReference.WeakCompareAndSet(Object, Object, Int32, Int32) Method

Definition

Atomically sets the value of both the reference and stamp to the given update values if the current reference is == to the expected reference and the current stamp is equal to the expected stamp.

[Android.Runtime.Register("weakCompareAndSet", "(Ljava/lang/Object;Ljava/lang/Object;II)Z", "GetWeakCompareAndSet_Ljava_lang_Object_Ljava_lang_Object_IIHandler")]
public virtual bool WeakCompareAndSet (Java.Lang.Object? expectedReference, Java.Lang.Object? newReference, int expectedStamp, int newStamp);
[<Android.Runtime.Register("weakCompareAndSet", "(Ljava/lang/Object;Ljava/lang/Object;II)Z", "GetWeakCompareAndSet_Ljava_lang_Object_Ljava_lang_Object_IIHandler")>]
abstract member WeakCompareAndSet : Java.Lang.Object * Java.Lang.Object * int * int -> bool
override this.WeakCompareAndSet : Java.Lang.Object * Java.Lang.Object * int * int -> bool

Parameters

expectedReference
Object

the expected value of the reference

newReference
Object

the new value for the reference

expectedStamp
Int32

the expected value of the stamp

newStamp
Int32

the new value for the stamp

Returns

true if successful

Attributes

Remarks

Atomically sets the value of both the reference and stamp to the given update values if the current reference is == to the expected reference and the current stamp is equal to the expected stamp. This operation may fail spuriously and does not provide ordering guarantees, so is only rarely an appropriate alternative to compareAndSet.

Java documentation for java.util.concurrent.atomic.AtomicStampedReference.weakCompareAndSet(V, V, int, int).

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