ConcurrentDictionary<TKey,TValue> Konstruktoren
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.
Initialisiert eine neue Instanz der ConcurrentDictionary<TKey,TValue>-Klasse.
Überlädt
ConcurrentDictionary<TKey,TValue>() |
Initialisiert eine neue, leere Instanz der ConcurrentDictionary<TKey,TValue>-Klasse mit der Standardparallelitätsebene und der Standardanfangskapazität, wobei der Standardvergleich für den Schlüsseltyp verwendet wird. |
ConcurrentDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>) |
Initialisiert eine neue Instanz der ConcurrentDictionary<TKey,TValue>-Klasse, die aus dem angegebenen IEnumerable<T> kopierte Elemente enthält, die Standardparallelitätsebene und Standardanfangskapazität aufweist und den Standardvergleich für den Schlüsseltyp verwendet. |
ConcurrentDictionary<TKey,TValue>(IEqualityComparer<TKey>) |
Initialisiert eine neue, leere Instanz der ConcurrentDictionary<TKey,TValue>-Klasse mit der Standardparallelitätsebene und -Kapazität und dem angegebenen IEqualityComparer<T>. |
ConcurrentDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>, IEqualityComparer<TKey>) |
Initialisiert eine neue instance der -Klasse, die elemente enthält, die ConcurrentDictionary<TKey,TValue> aus dem angegebenen IEnumerable mit der Standardkonlrenzebene kopiert wurden, die Standardanfangskapazität aufweist und die angegebene IEqualityComparer<T>verwendet. |
ConcurrentDictionary<TKey,TValue>(Int32, Int32) |
Initialisiert eine neue, leere Instanz der ConcurrentDictionary<TKey,TValue>-Klasse mit der angegebenen Parallelitätsebene und Kapazität, wobei der Standardvergleich für den Schlüsseltyp verwendet wird. |
ConcurrentDictionary<TKey,TValue>(Int32, IEnumerable<KeyValuePair<TKey,TValue>>, IEqualityComparer<TKey>) |
Initialisiert eine neue Instanz der ConcurrentDictionary<TKey,TValue>-Klasse, die aus dem angegebenen IEnumerable kopierte Elemente enthält und den angegebenen IEqualityComparer<T> verwendet. |
ConcurrentDictionary<TKey,TValue>(Int32, Int32, IEqualityComparer<TKey>) |
Initialisiert eine neue, leere Instanz der ConcurrentDictionary<TKey,TValue>-Klasse mit der angegebenen Parallelitätsebene und Anfangskapazität und dem angegebenen IEqualityComparer<T>. |
ConcurrentDictionary<TKey,TValue>()
- Quelle:
- ConcurrentDictionary.cs
- Quelle:
- ConcurrentDictionary.cs
- Quelle:
- ConcurrentDictionary.cs
Initialisiert eine neue, leere Instanz der ConcurrentDictionary<TKey,TValue>-Klasse mit der Standardparallelitätsebene und der Standardanfangskapazität, wobei der Standardvergleich für den Schlüsseltyp verwendet wird.
public:
ConcurrentDictionary();
public ConcurrentDictionary ();
Public Sub New ()
Hinweise
Die Standardparallelitätsebene ist gleich der Anzahl von CPUs. Je höher die Parallelitätsstufe ist, desto mehr gleichzeitige Schreibvorgänge können ohne Störungen und Blockierungen erfolgen. Höhere Werte auf Parallelitätsebene führen auch dazu, dass Vorgänge, die alle Sperren erfordern (z. B. Größenänderung ToArray
von Tabellen und Count
) teurer werden. Die Standardkapazität (DEFAULT_CAPACITY), die die anfängliche Anzahl von Buckets darstellt, ist ein Kompromiss zwischen der Größe eines sehr kleinen Wörterbuchs und der Anzahl von Größenänderungen beim Erstellen eines großen Wörterbuchs. Außerdem sollte die Kapazität nicht durch eine kleine Primzahl teilbar sein. Die Standardkapazität ist 31.
Weitere Informationen
- Threadsichere Sammlungen
- How to: Hinzufügen und Entfernen von Elementen aus einem ConcurrentDictionary
Gilt für:
ConcurrentDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>)
- Quelle:
- ConcurrentDictionary.cs
- Quelle:
- ConcurrentDictionary.cs
- Quelle:
- ConcurrentDictionary.cs
Initialisiert eine neue Instanz der ConcurrentDictionary<TKey,TValue>-Klasse, die aus dem angegebenen IEnumerable<T> kopierte Elemente enthält, die Standardparallelitätsebene und Standardanfangskapazität aufweist und den Standardvergleich für den Schlüsseltyp verwendet.
public:
ConcurrentDictionary(System::Collections::Generic::IEnumerable<System::Collections::Generic::KeyValuePair<TKey, TValue>> ^ collection);
public ConcurrentDictionary (System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>> collection);
new System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value> : seq<System.Collections.Generic.KeyValuePair<'Key, 'Value>> -> System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value>
Public Sub New (collection As IEnumerable(Of KeyValuePair(Of TKey, TValue)))
Parameter
- collection
- IEnumerable<KeyValuePair<TKey,TValue>>
Das IEnumerable<T>, dessen Elemente in das neue ConcurrentDictionary<TKey,TValue> kopiert werden.
Ausnahmen
collection
oder einer der zugehörigen Schlüssel ist null
.
collection
enthält mindestens einen doppelten Schlüssel.
Weitere Informationen
- Threadsichere Sammlungen
- How to: Hinzufügen und Entfernen von Elementen aus einem ConcurrentDictionary
Gilt für:
ConcurrentDictionary<TKey,TValue>(IEqualityComparer<TKey>)
- Quelle:
- ConcurrentDictionary.cs
- Quelle:
- ConcurrentDictionary.cs
- Quelle:
- ConcurrentDictionary.cs
Initialisiert eine neue, leere Instanz der ConcurrentDictionary<TKey,TValue>-Klasse mit der Standardparallelitätsebene und -Kapazität und dem angegebenen IEqualityComparer<T>.
public:
ConcurrentDictionary(System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
public ConcurrentDictionary (System.Collections.Generic.IEqualityComparer<TKey> comparer);
public ConcurrentDictionary (System.Collections.Generic.IEqualityComparer<TKey>? comparer);
new System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value> : System.Collections.Generic.IEqualityComparer<'Key> -> System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value>
Public Sub New (comparer As IEqualityComparer(Of TKey))
Parameter
- comparer
- IEqualityComparer<TKey>
Die Übereinstimmungsvergleich-Implementierung, die beim Vergleich von Schlüsseln verwendet wird.
Ausnahmen
comparer
ist null
Weitere Informationen
- Threadsichere Sammlungen
- How to: Hinzufügen und Entfernen von Elementen aus einem ConcurrentDictionary
Gilt für:
ConcurrentDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>, IEqualityComparer<TKey>)
- Quelle:
- ConcurrentDictionary.cs
- Quelle:
- ConcurrentDictionary.cs
- Quelle:
- ConcurrentDictionary.cs
Initialisiert eine neue instance der -Klasse, die elemente enthält, die ConcurrentDictionary<TKey,TValue> aus dem angegebenen IEnumerable mit der Standardkonlrenzebene kopiert wurden, die Standardanfangskapazität aufweist und die angegebene IEqualityComparer<T>verwendet.
public:
ConcurrentDictionary(System::Collections::Generic::IEnumerable<System::Collections::Generic::KeyValuePair<TKey, TValue>> ^ collection, System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
public ConcurrentDictionary (System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>> collection, System.Collections.Generic.IEqualityComparer<TKey> comparer);
public ConcurrentDictionary (System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>> collection, System.Collections.Generic.IEqualityComparer<TKey>? comparer);
new System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value> : seq<System.Collections.Generic.KeyValuePair<'Key, 'Value>> * System.Collections.Generic.IEqualityComparer<'Key> -> System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value>
Public Sub New (collection As IEnumerable(Of KeyValuePair(Of TKey, TValue)), comparer As IEqualityComparer(Of TKey))
Parameter
- collection
- IEnumerable<KeyValuePair<TKey,TValue>>
Das IEnumerable<T>, dessen Elemente in das neue ConcurrentDictionary<TKey,TValue> kopiert werden.
- comparer
- IEqualityComparer<TKey>
Die IEqualityComparer<T>-Implementierung, die beim Vergleich von Schlüsseln verwendet wird.
Ausnahmen
collection
oder comparer
ist null
.
Weitere Informationen
- Threadsichere Sammlungen
- How to: Hinzufügen und Entfernen von Elementen aus einem ConcurrentDictionary
Gilt für:
ConcurrentDictionary<TKey,TValue>(Int32, Int32)
- Quelle:
- ConcurrentDictionary.cs
- Quelle:
- ConcurrentDictionary.cs
- Quelle:
- ConcurrentDictionary.cs
Initialisiert eine neue, leere Instanz der ConcurrentDictionary<TKey,TValue>-Klasse mit der angegebenen Parallelitätsebene und Kapazität, wobei der Standardvergleich für den Schlüsseltyp verwendet wird.
public:
ConcurrentDictionary(int concurrencyLevel, int capacity);
public ConcurrentDictionary (int concurrencyLevel, int capacity);
new System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value> : int * int -> System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value>
Public Sub New (concurrencyLevel As Integer, capacity As Integer)
Parameter
- concurrencyLevel
- Int32
Die geschätzte Anzahl von Threads, die ConcurrentDictionary<TKey,TValue> gleichzeitig oder nur in .NET 8 und höher -1 aktualisiert werden, um die Standardparallelitätsebene anzugeben.
- capacity
- Int32
Die anfängliche Anzahl von Elementen, die das ConcurrentDictionary<TKey,TValue> enthalten kann.
Ausnahmen
concurrencyLevel
ist kleiner als 1.
- oder -
capacity
ist kleiner als 0.
Weitere Informationen
- Threadsichere Sammlungen
- How to: Hinzufügen und Entfernen von Elementen aus einem ConcurrentDictionary
Gilt für:
ConcurrentDictionary<TKey,TValue>(Int32, IEnumerable<KeyValuePair<TKey,TValue>>, IEqualityComparer<TKey>)
- Quelle:
- ConcurrentDictionary.cs
- Quelle:
- ConcurrentDictionary.cs
- Quelle:
- ConcurrentDictionary.cs
Initialisiert eine neue Instanz der ConcurrentDictionary<TKey,TValue>-Klasse, die aus dem angegebenen IEnumerable kopierte Elemente enthält und den angegebenen IEqualityComparer<T> verwendet.
public:
ConcurrentDictionary(int concurrencyLevel, System::Collections::Generic::IEnumerable<System::Collections::Generic::KeyValuePair<TKey, TValue>> ^ collection, System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
public ConcurrentDictionary (int concurrencyLevel, System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>> collection, System.Collections.Generic.IEqualityComparer<TKey> comparer);
public ConcurrentDictionary (int concurrencyLevel, System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>> collection, System.Collections.Generic.IEqualityComparer<TKey>? comparer);
new System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value> : int * seq<System.Collections.Generic.KeyValuePair<'Key, 'Value>> * System.Collections.Generic.IEqualityComparer<'Key> -> System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value>
Public Sub New (concurrencyLevel As Integer, collection As IEnumerable(Of KeyValuePair(Of TKey, TValue)), comparer As IEqualityComparer(Of TKey))
Parameter
- concurrencyLevel
- Int32
Die geschätzte Anzahl von Threads, die ConcurrentDictionary<TKey,TValue> gleichzeitig oder nur in .NET 8 und höher -1 aktualisiert werden, um die Standardparallelitätsebene anzugeben.
- collection
- IEnumerable<KeyValuePair<TKey,TValue>>
Das IEnumerable<T>, dessen Elemente in das neue ConcurrentDictionary<TKey,TValue> kopiert werden.
- comparer
- IEqualityComparer<TKey>
Die IEqualityComparer<T>-Implementierung, die beim Vergleich von Schlüsseln verwendet wird.
Ausnahmen
collection
oder comparer
ist null
.
concurrencyLevel
ist kleiner als 1.
collection
enthält mindestens einen doppelten Schlüssel.
Weitere Informationen
- Threadsichere Sammlungen
- How to: Hinzufügen und Entfernen von Elementen aus einem ConcurrentDictionary
Gilt für:
ConcurrentDictionary<TKey,TValue>(Int32, Int32, IEqualityComparer<TKey>)
- Quelle:
- ConcurrentDictionary.cs
- Quelle:
- ConcurrentDictionary.cs
- Quelle:
- ConcurrentDictionary.cs
Initialisiert eine neue, leere Instanz der ConcurrentDictionary<TKey,TValue>-Klasse mit der angegebenen Parallelitätsebene und Anfangskapazität und dem angegebenen IEqualityComparer<T>.
public:
ConcurrentDictionary(int concurrencyLevel, int capacity, System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
public ConcurrentDictionary (int concurrencyLevel, int capacity, System.Collections.Generic.IEqualityComparer<TKey> comparer);
public ConcurrentDictionary (int concurrencyLevel, int capacity, System.Collections.Generic.IEqualityComparer<TKey>? comparer);
new System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value> : int * int * System.Collections.Generic.IEqualityComparer<'Key> -> System.Collections.Concurrent.ConcurrentDictionary<'Key, 'Value>
Public Sub New (concurrencyLevel As Integer, capacity As Integer, comparer As IEqualityComparer(Of TKey))
Parameter
- concurrencyLevel
- Int32
Die geschätzte Anzahl von Threads, die ConcurrentDictionary<TKey,TValue> gleichzeitig oder nur in .NET 8 und höher -1 aktualisiert werden, um die Standardparallelitätsebene anzugeben.
- capacity
- Int32
Die anfängliche Anzahl von Elementen, die das ConcurrentDictionary<TKey,TValue> enthalten kann.
- comparer
- IEqualityComparer<TKey>
Die IEqualityComparer<T>-Implementierung, die beim Vergleich von Schlüsseln verwendet wird.
Ausnahmen
comparer
ist null
.
concurrencyLevel
oder capacity
ist kleiner als 1.
Weitere Informationen
- Threadsichere Sammlungen
- How to: Hinzufügen und Entfernen von Elementen aus einem ConcurrentDictionary