ConcurrentDictionary<TKey, TValue> Constructor (Int32, IEnumerable<KeyValuePair<TKey, TValue>>, IEqualityComparer<TKey>)
Initializes a new instance of the ConcurrentDictionary<TKey, TValue> class that contains elements copied from the specified IEnumerable, and uses the specified System.Collections.Generic.IEqualityComparer<T>.
Namespace: System.Collections.Concurrent
Assembly: mscorlib (in mscorlib.dll)
public ConcurrentDictionary( int concurrencyLevel, IEnumerable<KeyValuePair<TKey, TValue>> collection, IEqualityComparer<TKey> comparer )
Parameters
- concurrencyLevel
- Type: System.Int32
The estimated number of threads that will update the ConcurrentDictionary<TKey, TValue> concurrently.
- collection
- Type: System.Collections.Generic.IEnumerable<KeyValuePair<TKey, TValue>>
The System.Collections.Generic.IEnumerable<T> whose elements are copied to the new ConcurrentDictionary<TKey, TValue>.
- comparer
- Type: System.Collections.Generic.IEqualityComparer<TKey>
The System.Collections.Generic.IEqualityComparer<T> implementation to use when comparing keys.
| Exception | Condition |
|---|---|
| ArgumentNullException | collection or comparer is null. |
| ArgumentOutOfRangeException | concurrencyLevel is less than 1. |
| ArgumentException | collection contains one or more duplicate keys. |
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.