LongAccumulator Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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
- 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 |
| 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 |
| 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 |
| 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 . |
| 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 |
| 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 |
| DoubleValue() |
Devuelve el #get valor actual como |
| Equals(Object) |
Una o varias variables que mantienen un valor en ejecución |
| Equals(Object) |
Indica si algún otro objeto es "igual a" este. (Heredado de Object) |
| FloatValue() |
Devuelve el #get valor actual como |
| 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 |
| 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 |
| 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 |
| ShortValue() |
Devuelve el valor del número especificado como . |
| 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 |
| IJavaPeerable.Finalized() |
Una o varias variables que mantienen un valor en ejecución |
| IJavaPeerable.JniObjectReferenceControlBlock |
Una o varias variables que mantienen un valor en ejecución |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Una o varias variables que mantienen un valor en ejecución |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Una o varias variables que mantienen un valor en ejecución |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Una o varias variables que mantienen un valor en ejecución |
| IJavaPeerable.UnregisterFromRuntime() |
Una o varias variables que mantienen un valor en ejecución |
Métodos de extensión
| Nombre | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtiene el nombre JNI del tipo de la instancia |
| JavaAs<TResult>(IJavaPeerable) |
Intente coerción |
| 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 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Intente coerción |