LongAdder 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.
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme long
beibehalten.
[Android.Runtime.Register("java/util/concurrent/atomic/LongAdder", ApiSince=24, DoNotGenerateAcw=true)]
public class LongAdder : Java.Lang.Number, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("java/util/concurrent/atomic/LongAdder", ApiSince=24, DoNotGenerateAcw=true)>]
type LongAdder = class
inherit Number
interface ISerializable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- Vererbung
- Attribute
- Implementiert
Hinweise
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme long
beibehalten. Wenn Updates (Methode #add
) threadsübergreifend angesetzt werden, kann der Variablensatz dynamisch wachsen, um Konflikte zu verringern. Die Methode #sum
(oder, äquivalent) gibt die aktuelle Gesamtsumme für die Variablen zurück, #longValue
die die Summe beibehalten.
Diese Klasse ist normalerweise vorzuziehen AtomicLong
, wenn mehrere Threads eine allgemeine Summe aktualisieren, die für Zwecke wie das Sammeln von Statistiken und nicht für eine differenzierte Synchronisierungssteuerung verwendet wird. Bei geringen Aktualisierungskonflikten weisen die beiden Klassen ähnliche Merkmale auf. Aber unter hohen Konflikten ist der erwartete Durchsatz dieser Klasse deutlich höher, auf Kosten eines höheren Platzverbrauchs.
LongAdders kann mit einem java.util.concurrent.ConcurrentHashMap
verwendet werden, um eine skalierbare Häufigkeitskarte (eine Form von Histogramm oder Multiset) zu verwalten. Sie können beispielsweise verwenden, um eine Anzahl zu einer ConcurrentHashMap<String,LongAdder> freqs
hinzuzufügen, die initialisiert wird, wenn sie noch nicht vorhanden ist. freqs.computeIfAbsent(key, k -> new LongAdder()).increment();
Diese Klasse erweitert Number
, definiert>< jedoch Methoden<> wie , hashCode
und equals
compareTo
da Instanzen voraussichtlich mutiert werden und daher nicht als Auflistungsschlüssel nützlich sind.
In Version 1.8 hinzugefügt.
Java-Dokumentation für java.util.concurrent.atomic.LongAdder
.
Teile dieser Seite sind Änderungen, die auf Arbeiten basieren, die vom Android Open Source Project erstellt und freigegeben wurden und gemäß den In der Attribution License beschriebenen Begriffen verwendet werden.
Konstruktoren
LongAdder() |
Erstellt einen neuen Adder mit der Anfangssumme von 0. |
LongAdder(IntPtr, JniHandleOwnership) |
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme |
Eigenschaften
Class |
Gibt die Laufzeitklasse dieses |
Handle |
Das Handle zum zugrunde liegenden Android-instance. (Geerbt von Object) |
JniIdentityHashCode |
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme |
JniPeerMembers |
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme |
PeerReference |
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme |
ThresholdClass |
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme |
ThresholdType |
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme |
Methoden
Add(Int64) |
Fügt den angegebenen Wert hinzu. |
ByteValue() |
Gibt den Wert der angegebenen Zahl als zurück |
Clone() |
Erstellt und gibt eine Kopie dieses Objekts zurück. (Geerbt von Object) |
Decrement() |
Entspricht |
Dispose() |
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme |
Dispose(Boolean) |
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme |
DoubleValue() |
Gibt den |
Equals(Object) |
Gibt an, ob ein anderes Objekt diesem "gleich" ist. (Geerbt von Object) |
FloatValue() |
Gibt den |
GetHashCode() |
Gibt einen Hashcodewert für das Objekt zurück. (Geerbt von Object) |
Increment() |
Entspricht |
IntValue() |
Gibt das |
JavaFinalize() |
Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection feststellt, dass keine Verweise mehr auf das Objekt vorhanden sind. (Geerbt von Object) |
LongValue() |
Entspricht |
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 die Summe auf 0 beibehalten. |
SetHandle(IntPtr, JniHandleOwnership) |
Legt die Handle-Eigenschaft fest. (Geerbt von Object) |
ShortValue() |
Gibt den Wert der angegebenen Zahl als zurück |
Sum() |
Gibt die aktuelle Summe zurück. |
SumThenReset() |
Entspricht in der Wirkung gefolgt |
ToArray<T>() |
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme |
ToString() |
Gibt eine Zeichenfolgendarstellung des Objekts zurück. (Geerbt von Object) |
UnregisterFromRuntime() |
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme |
Wait() |
Bewirkt, dass der aktuelle Thread wartet, bis er aktiviert wird, in der Regel durch em benachrichtigen/em> oder <em>interrupted</em>.<>< (Geerbt von Object) |
Wait(Int64) |
Bewirkt, dass der aktuelle Thread wartet, bis er aktiviert wird, in der Regel, indem <er>benachrichtigt</em> oder <em>interrupted</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist. (Geerbt von Object) |
Wait(Int64, Int32) |
Bewirkt, dass der aktuelle Thread wartet, bis er aktiviert wird, in der Regel, indem <er>benachrichtigt</em> oder <em>interrupted</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist. (Geerbt von Object) |
Explizite Schnittstellenimplementierungen
IJavaPeerable.Disposed() |
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme |
IJavaPeerable.DisposeUnlessReferenced() |
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme |
IJavaPeerable.Finalized() |
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme |
IJavaPeerable.JniManagedPeerState |
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme |
Erweiterungsmethoden
JavaCast<TResult>(IJavaObject) |
Führt eine Für Android-Runtime überprüfte Typkonvertierung aus. |
JavaCast<TResult>(IJavaObject) |
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme |
GetJniTypeName(IJavaPeerable) |
Eine oder mehrere Variablen, die zusammen eine anfängliche Nullsumme |