ConcurrentDictionary<TKey,TValue> Costruttori

Definizione

Inizializza una nuova istanza della classe ConcurrentDictionary<TKey,TValue>.Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class.

Overload

ConcurrentDictionary<TKey,TValue>()

Inizializza una nuova istanza vuota della classe ConcurrentDictionary<TKey,TValue>, con il livello di concorrenza e la capacità iniziale predefiniti e che usa l'operatore di confronto predefinito per il tipo di chiave.Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that is empty, has the default concurrency level, has the default initial capacity, and uses the default comparer for the key type.

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

Inizializza una nuova istanza della classe ConcurrentDictionary<TKey,TValue> che contiene elementi copiati dall'oggetto IEnumerable<T>, dispone del livello di concorrenza e della capacità iniziale predefiniti e utilizza l'operatore di confronto predefinito per il tipo di chiave.Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that contains elements copied from the specified IEnumerable<T>, has the default concurrency level, has the default initial capacity, and uses the default comparer for the key type.

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

Inizializza una nuova istanza vuota della classe ConcurrentDictionary<TKey,TValue>, con il livello di concorrenza e la capacità predefiniti e che usa l'oggetto IEqualityComparer<T> specificato.Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that is empty, has the default concurrency level and capacity, and uses the specified IEqualityComparer<T>.

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

Inizializza una nuova istanza della classe ConcurrentDictionary<TKey,TValue> che contiene elementi copiati dall'oggetto IEnumerable specificato, con il livello di concorrenza e la capacità iniziale predefiniti e che usa l'oggetto IEqualityComparer<T> specificato.Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that contains elements copied from the specified IEnumerable has the default concurrency level, has the default initial capacity, and uses the specified IEqualityComparer<T>.

ConcurrentDictionary<TKey,TValue>(Int32, Int32)

Inizializza una nuova istanza vuota della classe ConcurrentDictionary<TKey,TValue>, con il livello di concorrenza e la capacità specificati e che usa l'operatore di confronto predefinito per il tipo di chiave.Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that is empty, has the specified concurrency level and capacity, and uses the default comparer for the key type.

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

Inizializza una nuova istanza della classe ConcurrentDictionary<TKey,TValue> che contiene gli elementi copiati dall'interfaccia IEnumerable specificata e che usa l'interfaccia IEqualityComparer<T> indicata.Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that contains elements copied from the specified IEnumerable, and uses the specified IEqualityComparer<T>.

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

Inizializza una nuova istanza vuota della classe ConcurrentDictionary<TKey,TValue>, con il livello di concorrenza e la capacità iniziale specificati e che utilizza l'oggetto IEqualityComparer<T> specificato.Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that is empty, has the specified concurrency level, has the specified initial capacity, and uses the specified IEqualityComparer<T>.

ConcurrentDictionary<TKey,TValue>()

Inizializza una nuova istanza vuota della classe ConcurrentDictionary<TKey,TValue>, con il livello di concorrenza e la capacità iniziale predefiniti e che usa l'operatore di confronto predefinito per il tipo di chiave.Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that is empty, has the default concurrency level, has the default initial capacity, and uses the default comparer for the key type.

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

Commenti

Il livello di concorrenza predefinito è uguale al numero di CPU.The default concurrency level is equal to the number of CPUs. Maggiore è il livello di concorrenza, le operazioni di scrittura simultanee possono avvenire senza interferenze e blocco.The higher the concurrency level is, the more concurrent write operations can take place without interference and blocking. I valori del livello di concorrenza più elevati provocano anche operazioni che richiedono tutti i blocchi, ad esempio ToArray il Countridimensionamento delle tabelle e, per diventare più costosi.Higher concurrency level values also cause operations that require all locks (for example, table resizing, ToArray and Count) to become more expensive. La capacità predefinita (DEFAULT_CAPACITY), che rappresenta il numero iniziale di bucket, è un compromesso tra le dimensioni di un dizionario molto piccolo e il numero di ridimensionamenti durante la costruzione di un dizionario di grandi dimensioni.The default capacity (DEFAULT_CAPACITY), which represents the initial number of buckets, is a trade-off between the size of a very small dictionary and the number of resizes when constructing a large dictionary. Inoltre, la capacità non dovrebbe essere divisibile per un numero primo basso.Also, the capacity should not be divisible by a small prime number. La capacità predefinita è 31.The default capacity is 31.

Vedi anche

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

Inizializza una nuova istanza della classe ConcurrentDictionary<TKey,TValue> che contiene elementi copiati dall'oggetto IEnumerable<T>, dispone del livello di concorrenza e della capacità iniziale predefiniti e utilizza l'operatore di confronto predefinito per il tipo di chiave.Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that contains elements copied from the specified IEnumerable<T>, has the default concurrency level, has the default initial capacity, and uses the default comparer for the key type.

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

Parametri

collection
IEnumerable<KeyValuePair<TKey,TValue>>

Oggetto IEnumerable<T> i cui elementi sono copiati nel nuovo oggetto ConcurrentDictionary<TKey,TValue>.The IEnumerable<T> whose elements are copied to the new ConcurrentDictionary<TKey,TValue>.

Eccezioni

collection o le relative chiavi sono null.collection or any of its keys is null.

collection contiene una o più chiavi duplicate.collection contains one or more duplicate keys.

Vedi anche

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

Inizializza una nuova istanza vuota della classe ConcurrentDictionary<TKey,TValue>, con il livello di concorrenza e la capacità predefiniti e che usa l'oggetto IEqualityComparer<T> specificato.Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that is empty, has the default concurrency level and capacity, and uses the specified 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))

Parametri

comparer
IEqualityComparer<TKey>

Implementazione confronto di uguaglianza da usare quando si confrontano le chiavi.The equality comparison implementation to use when comparing keys.

Eccezioni

comparer è null.comparer is null.

Vedi anche

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

Inizializza una nuova istanza della classe ConcurrentDictionary<TKey,TValue> che contiene elementi copiati dall'oggetto IEnumerable specificato, con il livello di concorrenza e la capacità iniziale predefiniti e che usa l'oggetto IEqualityComparer<T> specificato.Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that contains elements copied from the specified IEnumerable has the default concurrency level, has the default initial capacity, and uses the specified 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))

Parametri

collection
IEnumerable<KeyValuePair<TKey,TValue>>

Oggetto IEnumerable<T> i cui elementi sono copiati nel nuovo oggetto ConcurrentDictionary<TKey,TValue>.The IEnumerable<T> whose elements are copied to the new ConcurrentDictionary<TKey,TValue>.

comparer
IEqualityComparer<TKey>

Implementazione di IEqualityComparer<T> da usare quando si confrontano le chiavi.The IEqualityComparer<T> implementation to use when comparing keys.

Eccezioni

collection o comparer è null.collection or comparer is null.

Vedi anche

ConcurrentDictionary<TKey,TValue>(Int32, Int32)

Inizializza una nuova istanza vuota della classe ConcurrentDictionary<TKey,TValue>, con il livello di concorrenza e la capacità specificati e che usa l'operatore di confronto predefinito per il tipo di chiave.Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that is empty, has the specified concurrency level and capacity, and uses the default comparer for the key type.

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)

Parametri

concurrencyLevel
Int32

Numero stimato di thread che aggiorneranno contemporaneamente l'oggetto ConcurrentDictionary<TKey,TValue>.The estimated number of threads that will update the ConcurrentDictionary<TKey,TValue> concurrently.

capacity
Int32

Numero iniziale degli elementi che ConcurrentDictionary<TKey,TValue> può contenere.The initial number of elements that the ConcurrentDictionary<TKey,TValue> can contain.

Eccezioni

concurrencyLevel è minore di 1.concurrencyLevel is less than 1.

-oppure--or- capacity è minore di 0.capacity is less than 0.

Vedi anche

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

Inizializza una nuova istanza della classe ConcurrentDictionary<TKey,TValue> che contiene gli elementi copiati dall'interfaccia IEnumerable specificata e che usa l'interfaccia IEqualityComparer<T> indicata.Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that contains elements copied from the specified IEnumerable, and uses the specified 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))

Parametri

concurrencyLevel
Int32

Numero stimato di thread che aggiorneranno contemporaneamente l'oggetto ConcurrentDictionary<TKey,TValue>.The estimated number of threads that will update the ConcurrentDictionary<TKey,TValue> concurrently.

collection
IEnumerable<KeyValuePair<TKey,TValue>>

Oggetto IEnumerable<T> i cui elementi sono copiati nel nuovo oggetto ConcurrentDictionary<TKey,TValue>.The IEnumerable<T> whose elements are copied to the new ConcurrentDictionary<TKey,TValue>.

comparer
IEqualityComparer<TKey>

Implementazione di IEqualityComparer<T> da usare quando si confrontano le chiavi.The IEqualityComparer<T> implementation to use when comparing keys.

Eccezioni

collection o comparer è null.collection or comparer is null.

concurrencyLevel è minore di 1.concurrencyLevel is less than 1.

collection contiene una o più chiavi duplicate.collection contains one or more duplicate keys.

Vedi anche

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

Inizializza una nuova istanza vuota della classe ConcurrentDictionary<TKey,TValue>, con il livello di concorrenza e la capacità iniziale specificati e che utilizza l'oggetto IEqualityComparer<T> specificato.Initializes a new instance of the ConcurrentDictionary<TKey,TValue> class that is empty, has the specified concurrency level, has the specified initial capacity, and uses the specified 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))

Parametri

concurrencyLevel
Int32

Numero stimato di thread che aggiorneranno contemporaneamente l'oggetto ConcurrentDictionary<TKey,TValue>.The estimated number of threads that will update the ConcurrentDictionary<TKey,TValue> concurrently.

capacity
Int32

Numero iniziale degli elementi che ConcurrentDictionary<TKey,TValue> può contenere.The initial number of elements that the ConcurrentDictionary<TKey,TValue> can contain.

comparer
IEqualityComparer<TKey>

Implementazione di IEqualityComparer<T> da usare quando si confrontano le chiavi.The IEqualityComparer<T> implementation to use when comparing keys.

Eccezioni

comparer è null.comparer is null.

concurrencyLevel o capacity è minore di 1.concurrencyLevel or capacity is less than 1.

Vedi anche

Si applica a