DoubleAccumulator Clase

Definición

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

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

Comentarios

Una o varias variables que mantienen un valor en ejecución double 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, #doubleValue) devuelve el valor actual entre las variables que mantienen las actualizaciones.

Normalmente, esta clase es preferible a alternativas cuando varios subprocesos actualizan un valor común que se usa con fines como estadísticas de resumen que se actualizan con frecuencia, pero se leen con menos frecuencia.

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 conmutante y asociativa dentro de la tolerancia de punto flotante necesaria en contextos de uso. 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 Double::max junto con Double.NEGATIVE_INFINITY como identidad. No se garantiza el orden de acumulación dentro o entre subprocesos. Por lo tanto, esta clase puede no ser aplicable si se requiere estabilidad numérica, especialmente cuando se combinan valores de orden de magnitud considerablemente diferentes.

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

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.

Documentación de Java para java.util.concurrent.atomic.DoubleAccumulator.

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.

Constructores

Nombre Description
DoubleAccumulator(IDoubleBinaryOperator, Double)

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

DoubleAccumulator(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 double 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(Double)

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 double 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 double actualizado mediante una función proporcionada.

(Heredado de JavaObject)
DoubleValue()

Equivalente a #get.

Equals(Object)

Una o varias variables que mantienen un valor en ejecución double 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 restricció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()

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

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 double 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 double actualizado mediante una función proporcionada.

(Heredado de JavaObject)
IJavaPeerable.Finalized()

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

(Heredado de JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

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

(Heredado de JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

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

(Heredado de JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

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

(Heredado de JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

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

(Heredado de JavaObject)
IJavaPeerable.UnregisterFromRuntime()

Una o varias variables que mantienen un valor en ejecución double 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 double 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