AtomicReference.CompareAndExchange(Object, Object) 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 to newValue
if the current value,
referred to as the <em>witness value</em>, == expectedValue
,
with memory effects as specified by
VarHandle#compareAndExchange
.
[Android.Runtime.Register("compareAndExchange", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;", "", ApiSince=33)]
public Java.Lang.Object? CompareAndExchange (Java.Lang.Object? expectedValue, Java.Lang.Object? newValue);
[<Android.Runtime.Register("compareAndExchange", "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;", "", ApiSince=33)>]
member this.CompareAndExchange : Java.Lang.Object * Java.Lang.Object -> Java.Lang.Object
Parameters
- expectedValue
- Object
the expected value
- newValue
- Object
the new value
Returns
the witness value, which will be the same as the expected value if successful
- Attributes
Remarks
Atomically sets the value to newValue
if the current value, referred to as the <em>witness value</em>, == expectedValue
, with memory effects as specified by VarHandle#compareAndExchange
.
Added in 9.
Java documentation for java.util.concurrent.atomic.AtomicReference.compareAndExchange(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.