Lenguaje

AtomicReferenceFieldUpdater.AccumulateAndGet Método

Definición

Actualiza de forma atómica (con efectos de memoria especificados por VarHandle#compareAndSet) el campo del objeto especificado administrado por este actualizador con los resultados de aplicar la función dada a los valores actuales y especificados, devolviendo el valor actualizado.

[Android.Runtime.Register("accumulateAndGet", "(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/function/BinaryOperator;)Ljava/lang/Object;", "", ApiSince=24)]
public Java.Lang.Object? AccumulateAndGet(Java.Lang.Object? obj, Java.Lang.Object? x, Java.Util.Functions.IBinaryOperator? accumulatorFunction);
[<Android.Runtime.Register("accumulateAndGet", "(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/function/BinaryOperator;)Ljava/lang/Object;", "", ApiSince=24)>]
member this.AccumulateAndGet : Java.Lang.Object * Java.Lang.Object * Java.Util.Functions.IBinaryOperator -> Java.Lang.Object

Parámetros

obj
Object

Objeto cuyo campo se va a obtener y establecer

x
Object

el valor de actualización

accumulatorFunction
IBinaryOperator

una función sin efectos secundarios de dos argumentos

Devoluciones

el valor actualizado

Atributos

Comentarios

Actualiza de forma atómica (con efectos de memoria especificados por VarHandle#compareAndSet) el campo del objeto especificado administrado por este actualizador con los resultados de aplicar la función dada a los valores actuales y especificados, devolviendo el valor actualizado. La función debe estar libre de efectos secundarios, ya que se puede volver a aplicar cuando se produce un error en las actualizaciones intentadas debido a la contención entre subprocesos. La función se aplica con el valor actual como primer argumento y la actualización especificada como segundo argumento.

Agregado en la versión 1.8.

Documentación de Java para java.util.concurrent.atomic.AtomicReferenceFieldUpdater.accumulateAndGet(T, V, java.util.function.BinaryOperator<V>).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Se aplica a