DoubleAccumulator Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Mindestens eine Variable, die gemeinsam einen ausgeführten double Wert mithilfe einer bereitgestellten Funktion aktualisiert.
[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
- Vererbung
- Attribute
- Implementiert
Hinweise
Mindestens eine Variable, die gemeinsam einen ausgeführten double Wert mithilfe einer bereitgestellten Funktion aktualisiert. Wenn Aktualisierungen (Methode #accumulate) über Threads hinweg angehalten werden, kann die Gruppe von Variablen dynamisch wachsen, um den Inhalt zu reduzieren. Die Methode #get (oder, gleichwertig) gibt den aktuellen Wert für die Variablen zurück, #doubleValuedie Aktualisierungen beibehalten.
Diese Klasse ist in der Regel Alternativen vorzuziehen, wenn mehrere Threads einen gemeinsamen Wert aktualisieren, der für Zwecke wie Zusammenfassungsstatistiken verwendet wird, die häufig aktualisiert, aber weniger häufig gelesen werden.
Die bereitgestellte Akkumulatorfunktion sollte nebeneffektfrei sein, da sie möglicherweise erneut angewendet werden kann, wenn versuchte Updates aufgrund der Beeinträchtigung zwischen Threads fehlschlagen. Für vorhersehbare Ergebnisse sollte die Akkumulatorfunktion kommutativ und assoziativ innerhalb der Gleitkommatoleranz sein, die in Verwendungskontexten erforderlich ist. Die Funktion wird mit einem vorhandenen Wert (oder einer Vorhandenen Identität) als ein Argument und eine bestimmte Aktualisierung als anderes Argument angewendet. Um beispielsweise einen laufenden Maximalwert beizubehalten, können Sie zusammen mit Double::max der Identität angebenDouble.NEGATIVE_INFINITY. Die Reihenfolge der Akkumulation innerhalb oder über Threads hinweg ist nicht garantiert. Daher kann diese Klasse nicht anwendbar sein, wenn numerische Stabilität erforderlich ist, insbesondere bei der Kombination von Werten mit erheblich unterschiedlichen Größenordnungen.
Klasse DoubleAdder stellt Analoga der Funktionalität dieser Klasse für den üblichen Sonderfall der Verwaltung von Summen bereit. Der Anruf new DoubleAdder() entspricht new DoubleAccumulator((x, y) -> x + y, 0.0)dem .
Diese Klasse erweitertNumber, definiert <>jedoch keine< Methoden> wie equals, hashCode und compareTo da Instanzen erwartet werden, dass sie stumm geschaltet werden und daher nicht als Sammlungsschlüssel nützlich sind.
Hinzugefügt in 1.8.
Java Dokumentation für java.util.concurrent.atomic.DoubleAccumulator.
Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.
Konstruktoren
| Name | Beschreibung |
|---|---|
| DoubleAccumulator(IDoubleBinaryOperator, Double) |
Erstellt eine neue Instanz mithilfe der angegebenen Akkumulatorfunktion und des Identitätselements. |
| DoubleAccumulator(IntPtr, JniHandleOwnership) |
Ein Konstruktor, der beim Erstellen verwalteter Darstellungen von JNI-Objekten verwendet wird; wird von der Laufzeit aufgerufen. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Class |
Gibt die Laufzeitklasse dieses Werts |
| Handle |
Das Handle für die zugrunde liegende Android-Instanz. (Geerbt von Object) |
| JniIdentityHashCode |
Ruft den Identitätshashcode ab, der diesem Java Peer von der Interop-Laufzeit zugewiesen ist. (Geerbt von Object) |
| JniManagedPeerState |
Mindestens eine Variable, die gemeinsam einen ausgeführten |
| JniPeerMembers |
Ruft die JNI-Metadaten ab, die zum Aufrufen von Mitgliedern dieses Java Peers verwendet werden. |
| PeerReference |
Ruft den JNI-Objektverweis für diesen Java Peer ab. (Geerbt von Object) |
| ThenReset |
Äquivalent in Wirkung auf |
| ThresholdClass |
Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. |
| ThresholdType |
Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. |
Methoden
| Name | Beschreibung |
|---|---|
| Accumulate(Double) |
Aktualisiert mit dem angegebenen Wert. |
| ByteValue() |
Gibt den Wert der angegebenen Zahl als ein |
| Clone() |
Erstellt und gibt eine Kopie dieses Objekts zurück. (Geerbt von Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Mindestens eine Variable, die gemeinsam einen ausgeführten |
| Dispose() |
Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden. (Geerbt von Object) |
| Dispose(Boolean) |
Veröffentlicht die Ressourcen, die von diesem Java Peer gehalten werden. (Geerbt von Object) |
| DisposeUnlessReferenced() |
Mindestens eine Variable, die gemeinsam einen ausgeführten |
| DoubleValue() |
Entspricht |
| Equals(Object) |
Mindestens eine Variable, die gemeinsam einen ausgeführten |
| Equals(Object) |
Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist. (Geerbt von Object) |
| FloatValue() |
Gibt den #get aktuellen Wert als |
| Get() |
Gibt den aktuellen Wert zurück. |
| GetHashCode() |
Gibt einen Hashcodewert für das Objekt zurück. (Geerbt von Object) |
| IntValue() |
Gibt den #get aktuellen Wert als |
| JavaFinalize() |
Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection bestimmt, dass keine weiteren Verweise auf das Objekt vorhanden sind. (Geerbt von Object) |
| LongValue() |
Gibt den #get aktuellen Wert als |
| Notify() |
Aktiviert einen einzelnen Thread, der auf dem Monitor dieses Objekts wartet. (Geerbt von Object) |
| NotifyAll() |
Aktiviert alle Threads, die auf dem Monitor dieses Objekts warten. (Geerbt von Object) |
| Reset() |
Setzt Variablen zurück, die Aktualisierungen des Identitätswerts beibehalten. |
| SetHandle(IntPtr, JniHandleOwnership) |
Legt die Handle-Eigenschaft fest. (Geerbt von Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Mindestens eine Variable, die gemeinsam einen ausgeführten |
| ShortValue() |
Gibt den Wert der angegebenen Zahl als ein |
| ToArray<T>() |
Erstellt ein verwaltetes Array aus diesem Java Arraywrapper. (Geerbt von Object) |
| ToString() |
Gibt eine Zeichenfolgendarstellung des Objekts zurück. (Geerbt von Object) |
| UnregisterFromRuntime() |
Hebt die Registrierung dieses Java Peers aus der Interop-Laufzeit auf. (Geerbt von Object) |
| Wait() |
Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch em benachrichtigt/em< oder >em<unterbrochen>/em<.><> (Geerbt von Object) |
| Wait(Int64, Int32) |
Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist. (Geerbt von Object) |
| Wait(Int64) |
Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist. (Geerbt von Object) |
Explizite Schnittstellenimplementierungen
| Name | Beschreibung |
|---|---|
| IJavaPeerable.Disposed() |
Mindestens eine Variable, die gemeinsam einen ausgeführten |
| IJavaPeerable.Finalized() |
Mindestens eine Variable, die gemeinsam einen ausgeführten |
| IJavaPeerable.JniObjectReferenceControlBlock |
Mindestens eine Variable, die gemeinsam einen ausgeführten |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Mindestens eine Variable, die gemeinsam einen ausgeführten |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Mindestens eine Variable, die gemeinsam einen ausgeführten |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Mindestens eine Variable, die gemeinsam einen ausgeführten |
| IJavaPeerable.UnregisterFromRuntime() |
Mindestens eine Variable, die gemeinsam einen ausgeführten |
Erweiterungsmethoden
| Name | Beschreibung |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Ruft den JNI-Namen des Typs der Instanz |
| JavaAs<TResult>(IJavaPeerable) |
Versuchen Sie, die Eingabe |
| JavaCast<TResult>(IJavaObject) |
Führt eine android-laufzeitgecheckte Typkonvertierung aus. |
| JavaCast<TResult>(IJavaObject) |
Mindestens eine Variable, die gemeinsam einen ausgeführten |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Versuchen Sie, die Eingabe |