DoubleAccumulator Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Una o più variabili che insieme mantengono un valore in esecuzione double aggiornato usando una funzione fornita.
[Android.Runtime.Register("java/util/concurrent/atomic/DoubleAccumulator", ApiSince=24, DoNotGenerateAcw=true)]
public class DoubleAccumulator : Java.Lang.Number, IDisposable, Java.Interop.IJavaPeerable
[<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
- Ereditarietà
- Attributi
- Implementazioni
Commenti
Una o più variabili che insieme mantengono un valore in esecuzione double 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, #doubleValue) restituisce il valore corrente tra le variabili che mantengono gli aggiornamenti.
Questa classe è in genere preferibile alle alternative quando più thread aggiornano un valore comune usato per scopi quali le statistiche di riepilogo aggiornate di frequente, ma meno frequentemente lette.
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 i risultati prevedibili, la funzione dell'accumulo deve essere commutativa e associativa all'interno della tolleranza a virgola mobile richiesta nei contesti di utilizzo. 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 Double::max insieme Double.NEGATIVE_INFINITY come identità. L'ordine di accumulo all'interno o tra i thread non è garantito. Pertanto, questa classe potrebbe non essere applicabile se è necessaria la stabilità numerica, soprattutto quando si combinano valori di ordini di grandezza sostanzialmente diversi.
La classe DoubleAdder fornisce analogie della funzionalità di questa classe per il caso speciale comune di mantenimento delle somme. La chiamata new DoubleAdder() equivale a new DoubleAccumulator((x, y) -> x + y, 0.0).
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.DoubleAccumulator.
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 |
|---|---|
| DoubleAccumulator(IDoubleBinaryOperator, Double) |
Crea una nuova istanza utilizzando la funzione dell'accumulo e l'elemento Identity specificati. |
| DoubleAccumulator(IntPtr, JniHandleOwnership) |
Costruttore usato durante la creazione di rappresentazioni gestite di oggetti JNI; chiamato dal runtime. |
Proprietà
| Nome | Descrizione |
|---|---|
| Class |
Restituisce la classe di runtime di questo |
| Handle |
Handle per l'istanza di Android sottostante. (Ereditato da Object) |
| JniIdentityHashCode |
Ottiene il codice hash di identità assegnato a questo Java peer dal runtime di interoperabilità. (Ereditato da Object) |
| JniPeerMembers |
Ottiene i metadati JNI usati per richiamare i membri di questo peer Java. |
| PeerReference |
Ottiene il riferimento all'oggetto JNI per questo peer Java. (Ereditato da Object) |
| ThenReset |
Equivalente in effetti a |
| ThresholdClass |
Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice. |
| ThresholdType |
Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice. |
Metodi
| Nome | Descrizione |
|---|---|
| Accumulate(Double) |
Aggiorna con il valore specificato. |
| ByteValue() |
Restituisce il valore del numero specificato come . |
| Clone() |
Crea e restituisce una copia di questo oggetto. (Ereditato da Object) |
| Dispose() |
Rilascia le risorse contenute in questo peer Java. (Ereditato da Object) |
| Dispose(Boolean) |
Rilascia le risorse contenute in questo peer Java. (Ereditato da Object) |
| DoubleValue() |
Equivalente a |
| Equals(Object) |
Indica se un altro oggetto è "uguale a" questo. (Ereditato da Object) |
| FloatValue() |
Restituisce l'#get valore corrente come oggetto |
| 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 |
| JavaFinalize() |
Chiamato dal Garbage Collector su un oggetto quando Garbage Collection determina che non sono presenti altri riferimenti all'oggetto . (Ereditato da Object) |
| LongValue() |
Restituisce l'#get valore corrente come oggetto |
| 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 . |
| ToArray<T>() |
Crea una matrice gestita da questo wrapper di matrice Java. (Ereditato da Object) |
| ToString() |
Restituisce una rappresentazione di stringa dell'oggetto . (Ereditato da Object) |
| UnregisterFromRuntime() |
Annulla la registrazione di questo Java peer dal runtime di interoperabilità. (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() |
Notifica al runtime di interoperabilità che il peer gestito è stato eliminato. (Ereditato da Object) |
| IJavaPeerable.DisposeUnlessReferenced() |
Rilascia questo Java peer a meno che non venga conservato da un altro riferimento gestito. (Ereditato da Object) |
| IJavaPeerable.Finalized() |
Notifica al runtime di interoperabilità che il peer gestito è stato finalizzato. (Ereditato da Object) |
| IJavaPeerable.JniManagedPeerState |
Ottiene lo stato che descrive la relazione tra questo peer gestito e il relativo riferimento JNI. (Ereditato da Object) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Imposta il codice hash dell'identità di interoperabilità per questo Java peer. (Ereditato da Object) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Imposta lo stato peer gestito e JNI per questo peer Java. (Ereditato da Object) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Imposta il riferimento all'oggetto JNI usato da questo peer gestito. (Ereditato da Object) |
Metodi di estensione
| Nome | Descrizione |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Ottiene il nome JNI del tipo dell'istanza |
| JavaAs<TResult>(IJavaPeerable) |
Provare a digitare |
| 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 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Provare a digitare |