LongAccumulator Classe

Definizione

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita.

[Android.Runtime.Register("java/util/concurrent/atomic/LongAccumulator", ApiSince=24, DoNotGenerateAcw=true)]
public class LongAccumulator : Java.Lang.Number, IDisposable, Java.Interop.IJavaPeerable
[<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
Ereditarietà
LongAccumulator
Attributi
Implementazioni

Commenti

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita. Quando gli aggiornamenti (metodo #accumulate) vengono contesi tra thread, il set di variabili può aumentare dinamicamente per ridurre la contesa. Il metodo #get (o, in modo equivalente, #longValue) restituisce il valore corrente tra le variabili che mantengono gli aggiornamenti.

Questa classe è in genere preferibile a AtomicLong quando più thread aggiornano un valore comune usato per scopi quali la raccolta di statistiche, non per il controllo di sincronizzazione con granularità fine. In una contesa di aggiornamento bassa, le due classi hanno caratteristiche simili. Tuttavia, con una contesa elevata, la velocità effettiva prevista di questa classe è significativamente superiore, a scapito di un consumo maggiore di spazio.

L'ordine di accumulo all'interno o tra i thread non è garantito e non può essere dipendente, quindi questa classe è applicabile solo alle funzioni per le quali l'ordine di accumulo non è rilevante. Lafunzioneae fornita deve essere senza effetto collaterale, perché può essere riappresa quando i tentativi di aggiornamento hanno esito negativo a causa di conflitti tra i thread. Per risultati prevedibili, la funzione dell'accumulo deve essere associativa e commutativa. La funzione viene applicata con un valore esistente (o identity) come argomento e un determinato aggiornamento come altro argomento. Ad esempio, per mantenere un valore massimo in esecuzione, è possibile specificare Long::max insieme Long.MIN_VALUE come identità.

La classe LongAdder fornisce analogie della funzionalità di questa classe per il caso speciale comune di gestione dei conteggi e delle somme. La chiamata new LongAdder() equivale a new LongAccumulator((x, y) -> x + y, 0L).

Questa classe estende Number, ma non <><> definisce metodi come equals, hashCode e compareTo perché le istanze devono essere modificate e pertanto non sono utili come chiavi di raccolta.

Aggiunta nella versione 1.8.

per java.util.concurrent.atomic.LongAccumulator.

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.

Costruttori

Nome Descrizione
LongAccumulator(ILongBinaryOperator, Int64)

Crea una nuova istanza utilizzando la funzione dell'accumulo e l'elemento Identity specificati.

LongAccumulator(IntPtr, JniHandleOwnership)

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita.

Proprietà

Nome Descrizione
Class

Restituisce la classe di runtime di questo Objectoggetto .

(Ereditato da Object)
Handle

Handle per l'istanza di Android sottostante.

(Ereditato da Object)
JniIdentityHashCode

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita.

(Ereditato da Object)
JniPeerMembers

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita.

PeerReference

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita.

(Ereditato da Object)
ThenReset

Equivalente in effetti a #get seguito di #reset.

ThresholdClass

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita.

ThresholdType

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita.

Metodi

Nome Descrizione
Accumulate(Int64)

Aggiorna con il valore specificato.

ByteValue()

Restituisce il valore del numero specificato come .byte

(Ereditato da Number)
Clone()

Crea e restituisce una copia di questo oggetto.

(Ereditato da Object)
Dispose()

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita.

(Ereditato da Object)
Dispose(Boolean)

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita.

(Ereditato da Object)
DoubleValue()

Restituisce l'#get valore corrente come oggetto double dopo una conversione primitiva di tipo widening.

Equals(Object)

Indica se un altro oggetto è "uguale a" questo.

(Ereditato da Object)
FloatValue()

Restituisce l'#get valore corrente come oggetto float dopo una conversione primitiva di tipo widening.

Get()

Restituisce il valore corrente.

GetHashCode()

Restituisce un valore di codice hash per l'oggetto .

(Ereditato da Object)
IntValue()

Restituisce l'#get valore corrente come oggetto int dopo una conversione primitiva di tipo narrowing.

JavaFinalize()

Chiamato dal Garbage Collector su un oggetto quando Garbage Collection determina che non sono presenti altri riferimenti all'oggetto .

(Ereditato da Object)
LongValue()

Equivalente a #get.

Notify()

Riattiva un singolo thread in attesa del monitor dell'oggetto.

(Ereditato da Object)
NotifyAll()

Riattiva tutti i thread in attesa del monitor dell'oggetto.

(Ereditato da Object)
Reset()

Reimposta le variabili che mantengono gli aggiornamenti al valore Identity.

SetHandle(IntPtr, JniHandleOwnership)

Imposta la proprietà Handle.

(Ereditato da Object)
ShortValue()

Restituisce il valore del numero specificato come .short

(Ereditato da Number)
ToArray<T>()

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita.

(Ereditato da Object)
ToString()

Restituisce una rappresentazione di stringa dell'oggetto .

(Ereditato da Object)
UnregisterFromRuntime()

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita.

(Ereditato da Object)
Wait()

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo <>una notifica</em> o <em>interrotto</em>.

(Ereditato da Object)
Wait(Int64, Int32)

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo<> una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale.

(Ereditato da Object)
Wait(Int64)

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo<> una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale.

(Ereditato da Object)

Implementazioni dell'interfaccia esplicita

Nome Descrizione
IJavaPeerable.Disposed()

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita.

(Ereditato da Object)
IJavaPeerable.DisposeUnlessReferenced()

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita.

(Ereditato da Object)
IJavaPeerable.Finalized()

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita.

(Ereditato da Object)
IJavaPeerable.JniManagedPeerState

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita.

(Ereditato da Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita.

(Ereditato da Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita.

(Ereditato da Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita.

(Ereditato da Object)

Metodi di estensione

Nome Descrizione
GetJniTypeName(IJavaPeerable)

Ottiene il nome JNI del tipo dell'istanza selfdi .

JavaAs<TResult>(IJavaPeerable)

Provare a digitare selfTResult, verificando che la coercizione sia valida sul lato Java.

JavaCast<TResult>(IJavaObject)

Esegue una conversione del tipo di tipo controllato dal runtime Android.

JavaCast<TResult>(IJavaObject)

Una o più variabili che insieme mantengono un valore in esecuzione long aggiornato usando una funzione fornita.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Provare a digitare selfTResult, verificando che la coercizione sia valida sul lato Java.

Si applica a