ConcurrentDictionary<TKey,TValue> Konstruktoren

Definition

Initialisiert eine neue Instanz der ConcurrentDictionary<TKey,TValue>-Klasse.

Überlädt

Name Beschreibung
ConcurrentDictionary<TKey,TValue>()

Initialisiert eine neue Instanz der klasse, die ConcurrentDictionary<TKey,TValue> leer ist, die Standardkoncurrency-Ebene hat die Standard-Anfangskapazität und verwendet den Standardvergleich für den Schlüsseltyp.

ConcurrentDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>)

Initialisiert eine neue Instanz der ConcurrentDictionary<TKey,TValue> Klasse, die Elemente enthält, die aus dem angegebenen Element IEnumerable<T>kopiert wurden, weist die Standardkoncurrency-Ebene auf, verfügt über die Standardkapazität und verwendet den Standardvergleich für den Schlüsseltyp.

ConcurrentDictionary<TKey,TValue>(IEqualityComparer<TKey>)

Initialisiert eine neue Instanz der klasse, die ConcurrentDictionary<TKey,TValue> leer ist, hat die Standardkoncurrency-Ebene und Kapazität und verwendet die angegebene IEqualityComparer<T>.

ConcurrentDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>, IEqualityComparer<TKey>)

Initialisiert eine neue Instanz der ConcurrentDictionary<TKey,TValue> Klasse, die Elemente enthält, die aus dem angegebenen Element IEnumerable kopiert wurden, hat die Standard-Parallelitätsebene, hat die Standard-Anfangskapazität und verwendet die angegebene IEqualityComparer<T>.

ConcurrentDictionary<TKey,TValue>(Int32, Int32)

Initialisiert eine neue Instanz der klasse, die ConcurrentDictionary<TKey,TValue> leer ist, hat die angegebene Parallelitätsebene und Kapazität und verwendet den Standardvergleich für den Schlüsseltyp.

ConcurrentDictionary<TKey,TValue>(Int32, IEnumerable<KeyValuePair<TKey,TValue>>, IEqualityComparer<TKey>)

Initialisiert eine neue Instanz der Klasse, die ConcurrentDictionary<TKey,TValue> Elemente enthält, die aus dem angegebenen Element IEnumerablekopiert wurden, und verwendet die angegebene IEqualityComparer<T>.

ConcurrentDictionary<TKey,TValue>(Int32, Int32, IEqualityComparer<TKey>)

Initialisiert eine neue Instanz der Klasse, die ConcurrentDictionary<TKey,TValue> leer ist, hat die angegebene Parallelitätsebene, hat die angegebene Anfangskapazität und verwendet die angegebene IEqualityComparer<T>.

ConcurrentDictionary<TKey,TValue>()

Initialisiert eine neue Instanz der klasse, die ConcurrentDictionary<TKey,TValue> leer ist, die Standardkoncurrency-Ebene hat die Standard-Anfangskapazität und verwendet den Standardvergleich für den Schlüsseltyp.

public:
 ConcurrentDictionary();
public ConcurrentDictionary();
Public Sub New ()

Hinweise

Die Standardkoncurrency-Ebene ist gleich der Anzahl der CPUs. Je höher die Parallelitätsstufe ist, desto mehr gleichzeitige Schreibvorgänge können ohne Interferenz und Blockierung erfolgen. Höhere Werte auf Parallelitätsebene führen auch zu Vorgängen, die alle Sperren erfordern (z. B. Tabellengröße ToArray ändern und Count), um teurer zu 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 der Größenänderungen beim Erstellen eines großen Wörterbuchs. Außerdem sollte die Kapazität nicht durch eine kleine Primzahl divisierbar sein. Die Standardkapazität ist 31.

Weitere Informationen

Gilt für:

ConcurrentDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>)

Initialisiert eine neue Instanz der ConcurrentDictionary<TKey,TValue> Klasse, die Elemente enthält, die aus dem angegebenen Element IEnumerable<T>kopiert wurden, weist die Standardkoncurrency-Ebene auf, verfügt über die Standardkapazität und verwendet den Standardvergleich für den Schlüsseltyp.

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>>

Die IEnumerable<T> Elemente, deren Elemente in das neue ConcurrentDictionary<TKey,TValue>kopiert werden.

Ausnahmen

collection oder eines seiner Schlüssel ist null.

collection enthält mindestens einen doppelten Schlüssel.

Weitere Informationen

Gilt für:

ConcurrentDictionary<TKey,TValue>(IEqualityComparer<TKey>)

Initialisiert eine neue Instanz der klasse, die ConcurrentDictionary<TKey,TValue> leer ist, hat die Standardkoncurrency-Ebene und Kapazität und verwendet die angegebene IEqualityComparer<T>.

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 Gleichheitsvergleichsimplementierung, die beim Vergleichen von Schlüsseln verwendet werden soll.

Ausnahmen

comparer ist null.

Weitere Informationen

Gilt für:

ConcurrentDictionary<TKey,TValue>(IEnumerable<KeyValuePair<TKey,TValue>>, IEqualityComparer<TKey>)

Initialisiert eine neue Instanz der ConcurrentDictionary<TKey,TValue> Klasse, die Elemente enthält, die aus dem angegebenen Element IEnumerable kopiert wurden, hat die Standard-Parallelitätsebene, hat die Standard-Anfangskapazität und verwendet die angegebene IEqualityComparer<T>.

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>>

Die IEnumerable<T> Elemente, deren Elemente in das neue ConcurrentDictionary<TKey,TValue>kopiert werden.

comparer
IEqualityComparer<TKey>

Die IEqualityComparer<T> Implementierung, die beim Vergleichen von Schlüsseln verwendet werden soll.

Ausnahmen

collection oder comparer ist null.

Weitere Informationen

Gilt für:

ConcurrentDictionary<TKey,TValue>(Int32, Int32)

Initialisiert eine neue Instanz der klasse, die ConcurrentDictionary<TKey,TValue> leer ist, hat die angegebene Parallelitätsebene und Kapazität und verwendet den Standardvergleich für den Schlüsseltyp.

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 die ConcurrentDictionary<TKey,TValue> gleichzeitig oder nur in .NET 8+ aktualisieren, -1, um die Standardkoncurrency-Ebene anzugeben.

capacity
Int32

Die anfängliche Anzahl der Elemente, die enthalten ConcurrentDictionary<TKey,TValue> können.

Ausnahmen

concurrencyLevel ist kleiner als 1.

-oder-

capacity ist kleiner als 0.

Weitere Informationen

Gilt für:

ConcurrentDictionary<TKey,TValue>(Int32, IEnumerable<KeyValuePair<TKey,TValue>>, IEqualityComparer<TKey>)

Initialisiert eine neue Instanz der Klasse, die ConcurrentDictionary<TKey,TValue> Elemente enthält, die aus dem angegebenen Element IEnumerablekopiert wurden, und verwendet die angegebene IEqualityComparer<T>.

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 die ConcurrentDictionary<TKey,TValue> gleichzeitig oder nur in .NET 8+ aktualisieren, -1, um die Standardkoncurrency-Ebene anzugeben.

collection
IEnumerable<KeyValuePair<TKey,TValue>>

Die IEnumerable<T> Elemente, deren Elemente in das neue ConcurrentDictionary<TKey,TValue>kopiert werden.

comparer
IEqualityComparer<TKey>

Die IEqualityComparer<T> Implementierung, die beim Vergleichen von Schlüsseln verwendet werden soll.

Ausnahmen

collection oder comparer ist null.

concurrencyLevel ist kleiner als 1.

collection enthält mindestens einen doppelten Schlüssel.

Weitere Informationen

Gilt für:

ConcurrentDictionary<TKey,TValue>(Int32, Int32, IEqualityComparer<TKey>)

Initialisiert eine neue Instanz der Klasse, die ConcurrentDictionary<TKey,TValue> leer ist, hat die angegebene Parallelitätsebene, hat die angegebene Anfangskapazität und verwendet die angegebene 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);
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 die ConcurrentDictionary<TKey,TValue> gleichzeitig oder nur in .NET 8+ aktualisieren, -1, um die Standardkoncurrency-Ebene anzugeben.

capacity
Int32

Die anfängliche Anzahl der Elemente, die enthalten ConcurrentDictionary<TKey,TValue> können.

comparer
IEqualityComparer<TKey>

Die IEqualityComparer<T> Implementierung, die beim Vergleichen von Schlüsseln verwendet werden soll.

Ausnahmen

comparer ist null.

concurrencyLevel oder capacity ist kleiner als 1.

Weitere Informationen

Gilt für: