LongAccumulator Clase

Definición

Una o varias variables que mantienen un valor en ejecución long actualizado mediante una función proporcionada.

[Android.Runtime.Register("java/util/concurrent/atomic/LongAccumulator", ApiSince=24, DoNotGenerateAcw=true)]
public class LongAccumulator : Java.Lang.Number, IDisposable
[<Android.Runtime.Register("java/util/concurrent/atomic/LongAccumulator", ApiSince=24, DoNotGenerateAcw=true)>]
type LongAccumulator = class
    inherit Number
    interface ISerializable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Herencia
LongAccumulator
Atributos
Implementaciones

Comentarios

Una o varias variables que mantienen un valor en ejecución long actualizado mediante una función proporcionada. Cuando las actualizaciones (método #accumulate) se sostienen entre subprocesos, el conjunto de variables puede crecer dinámicamente para reducir la contención. El método #get (o, de forma equivalente, #longValue) devuelve el valor actual entre las variables que mantienen las actualizaciones.

Normalmente, esta clase es preferible a AtomicLong cuando varios subprocesos actualizan un valor común que se usa con fines como la recopilación de estadísticas, no para el control de sincronización específico. En la contención de actualizaciones bajas, las dos clases tienen características similares. Pero bajo una contención alta, el rendimiento esperado de esta clase es significativamente mayor, a costa del mayor consumo de espacio.

No se garantiza el orden de acumulación dentro o entre subprocesos y no se puede depender, por lo que esta clase solo es aplicable a las funciones para las que no importa el orden de acumulación. La función de acumulador proporcionada 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. Para los resultados predecibles, la función de acumulador debe ser asociativa y conmutante. La función se aplica con un valor existente (o identidad) como un argumento y una actualización determinada como el otro argumento. Por ejemplo, para mantener un valor máximo en ejecución, podría proporcionar Long::max junto con Long.MIN_VALUE como identidad.

La clase LongAdder proporciona analogías de la funcionalidad de esta clase para el caso especial común de mantenimiento de recuentos y sumas. La llamada new LongAdder() es equivalente a new LongAccumulator((x, y) -> x + y, 0L).

Esta clase extiende , pero no Numberdefine<>< métodos >como equals, hashCode y compareTo porque se espera que las instancias se mutan, por lo que no son útiles como claves de colección.

Agregado en la versión 1.8.

Java documentación para java.util.concurrent.atomic.LongAccumulator.

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.

Constructores

Nombre Description
LongAccumulator(ILongBinaryOperator, Int64)

Crea una nueva instancia mediante la función de acumulador y el elemento de identidad especificados.

LongAccumulator(IntPtr, JniHandleOwnership)

Constructor utilizado al crear representaciones administradas de objetos JNI; llamado por el tiempo de ejecución.

Propiedades

Nombre Description
Class

Devuelve la clase en tiempo de ejecución de este Objectobjeto .

(Heredado de Object)
Handle

Identificador de la instancia de Android subyacente.

(Heredado de Object)
JniIdentityHashCode

Obtiene el código hash de identidad asignado a este Java del mismo nivel por el tiempo de ejecución de interoperabilidad.

(Heredado de Object)
JniManagedPeerState

Una o varias variables que mantienen un valor en ejecución long actualizado mediante una función proporcionada.

(Heredado de JavaObject)
JniPeerMembers

Obtiene los metadatos de JNI usados para invocar miembros de este Java del mismo nivel.

PeerReference

Obtiene la referencia de objeto JNI para este Java del mismo nivel.

(Heredado de Object)
ThenReset

Equivalente en vigor a #get seguido de #reset.

ThresholdClass

Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código.

ThresholdType

Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código.

Métodos

Nombre Description
Accumulate(Int64)

Actualiza con el valor especificado.

ByteValue()

Devuelve el valor del número especificado como .byte

(Heredado de Number)
Clone()

Crea y devuelve una copia de este objeto.

(Heredado de Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

Una o varias variables que mantienen un valor en ejecución long actualizado mediante una función proporcionada.

(Heredado de JavaObject)
Dispose()

Libera los recursos mantenidos por este Java del mismo nivel.

(Heredado de Object)
Dispose(Boolean)

Libera los recursos mantenidos por este Java del mismo nivel.

(Heredado de Object)
DisposeUnlessReferenced()

Una o varias variables que mantienen un valor en ejecución long actualizado mediante una función proporcionada.

(Heredado de JavaObject)
DoubleValue()

Devuelve el #get valor actual como double después de una conversión primitiva de ampliación.

Equals(Object)

Una o varias variables que mantienen un valor en ejecución long actualizado mediante una función proporcionada.

(Heredado de JavaObject)
Equals(Object)

Indica si algún otro objeto es "igual a" este.

(Heredado de Object)
FloatValue()

Devuelve el #get valor actual como float después de una conversión primitiva de ampliación.

Get()

Devuelve el valor actual.

GetHashCode()

Devuelve un valor de código hash del objeto.

(Heredado de Object)
IntValue()

Devuelve el #get valor actual como int después de una conversión primitiva de restricción.

JavaFinalize()

Lo llama el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto .

(Heredado de Object)
LongValue()

Equivalente a #get.

Notify()

Activa un único subproceso que está esperando en el monitor de este objeto.

(Heredado de Object)
NotifyAll()

Activa todos los subprocesos que están esperando en el monitor de este objeto.

(Heredado de Object)
Reset()

Restablece las variables que mantienen las actualizaciones en el valor de identidad.

SetHandle(IntPtr, JniHandleOwnership)

Establece la propiedad Handle.

(Heredado de Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Una o varias variables que mantienen un valor en ejecución long actualizado mediante una función proporcionada.

(Heredado de JavaObject)
ShortValue()

Devuelve el valor del número especificado como .short

(Heredado de Number)
ToArray<T>()

Crea una matriz administrada a partir de este contenedor de matriz Java.

(Heredado de Object)
ToString()

Devuelve una representación de cadena del objeto.

(Heredado de Object)
UnregisterFromRuntime()

Anula el registro de este Java del mismo nivel del tiempo de ejecución de interoperabilidad.

(Heredado de Object)
Wait()

Hace que el subproceso actual espere hasta que se despierta, normalmente por ser em notificado/em< o >em<interrumpido>/em<.><>

(Heredado de Object)
Wait(Int64, Int32)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

(Heredado de Object)
Wait(Int64)

Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real.

(Heredado de Object)

Implementaciones de interfaz explícitas

Nombre Description
IJavaPeerable.Disposed()

Una o varias variables que mantienen un valor en ejecución long actualizado mediante una función proporcionada.

(Heredado de JavaObject)
IJavaPeerable.Finalized()

Una o varias variables que mantienen un valor en ejecución long actualizado mediante una función proporcionada.

(Heredado de JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Una o varias variables que mantienen un valor en ejecución long actualizado mediante una función proporcionada.

(Heredado de JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Una o varias variables que mantienen un valor en ejecución long actualizado mediante una función proporcionada.

(Heredado de JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Una o varias variables que mantienen un valor en ejecución long actualizado mediante una función proporcionada.

(Heredado de JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Una o varias variables que mantienen un valor en ejecución long actualizado mediante una función proporcionada.

(Heredado de JavaObject)
IJavaPeerable.UnregisterFromRuntime()

Una o varias variables que mantienen un valor en ejecución long actualizado mediante una función proporcionada.

Métodos de extensión

Nombre Description
GetJniTypeName(IJavaPeerable)

Obtiene el nombre JNI del tipo de la instancia self.

JavaAs<TResult>(IJavaPeerable)

Intente coerción self para escribir TResult, comprobando que la coerción es válida en el lado de Java.

JavaCast<TResult>(IJavaObject)

Realiza una conversión de tipos comprobados en tiempo de ejecución de Android.

JavaCast<TResult>(IJavaObject)

Una o varias variables que mantienen un valor en ejecución long actualizado mediante una función proporcionada.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Intente coerción self para escribir TResult, comprobando que la coerción es válida en el lado de Java.

Se aplica a