Lenguaje

VarHandle.CompareAndExchange(Object[]) Método

Definición

Establece de forma atómica el valor de una variable en newValue con la semántica de memoria de setVolatile(java.lang.Object...) si el valor actual de la variable, denominado valor testigo, == el valor expectedValue, tal como se obtiene acceso con la semántica de memoria de getVolatile(java.lang.Object...).

[Android.Runtime.Register("compareAndExchange", "([Ljava/lang/Object;)Ljava/lang/Object;", "", ApiSince=33)]
public Java.Lang.Object? CompareAndExchange(params Java.Lang.Object[]? args);
[<Android.Runtime.Register("compareAndExchange", "([Ljava/lang/Object;)Ljava/lang/Object;", "", ApiSince=33)>]
member this.CompareAndExchange : Java.Lang.Object[] -> Java.Lang.Object

Parámetros

args
Object[]

la lista de parámetros polimórficos de firma del formulario (CT1 ct1,..., CTn ctn, T expectedValue, T newValue), representado estáticamente mediante varargs.

Devoluciones

el resultado polimórfico de firma que es el valor del testigo, que será el mismo que el valor expectedValue si se realiza correctamente, representado estáticamente mediante Object.

Atributos

Comentarios

Establece de forma atómica el valor de una variable en newValue con la semántica de memoria de setVolatile(java.lang.Object...) si el valor actual de la variable, denominado valor testigo, == el valor expectedValue, tal como se obtiene acceso con la semántica de memoria de getVolatile(java.lang.Object...). La firma del método tiene el formato (CT1 ct1,..., CTn ctn, T expectedValue, T newValue)T. El descriptor de tipo simbólico en el sitio de llamada de compareAndExchange debe coincidir con el tipo de modo de acceso que es el resultado de llamar a accessModeType(VarHandle.AccessMode.COMPARE_AND_EXCHANGE) en este VarHandle.

referencia Java referencia para java.lang.invoke.VarHandle.compareAndExchange.

Se aplica a