AtomicMarkableReference.WeakCompareAndSet Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Atomically sets the value of both the reference and mark to the
given update values if the current reference is ==
to
the expected reference and the current mark is equal to the
expected mark.
[Android.Runtime.Register("weakCompareAndSet", "(Ljava/lang/Object;Ljava/lang/Object;ZZ)Z", "GetWeakCompareAndSet_Ljava_lang_Object_Ljava_lang_Object_ZZHandler")]
public virtual bool WeakCompareAndSet (Java.Lang.Object? expectedReference, Java.Lang.Object? newReference, bool expectedMark, bool newMark);
[<Android.Runtime.Register("weakCompareAndSet", "(Ljava/lang/Object;Ljava/lang/Object;ZZ)Z", "GetWeakCompareAndSet_Ljava_lang_Object_Ljava_lang_Object_ZZHandler")>]
abstract member WeakCompareAndSet : Java.Lang.Object * Java.Lang.Object * bool * bool -> bool
override this.WeakCompareAndSet : Java.Lang.Object * Java.Lang.Object * bool * bool -> bool
Parameters
- expectedReference
- Object
the expected value of the reference
- newReference
- Object
the new value for the reference
- expectedMark
- Boolean
the expected value of the mark
- newMark
- Boolean
the new value for the mark
Returns
true
if successful
- Attributes
Remarks
Atomically sets the value of both the reference and mark to the given update values if the current reference is ==
to the expected reference and the current mark is equal to the expected mark. This operation may fail spuriously and does not provide ordering guarantees, so is only rarely an appropriate alternative to compareAndSet
.
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.