다음을 통해 공유


ConcurrentDictionary<TKey,TValue> 생성자

정의

ConcurrentDictionary<TKey,TValue> 클래스의 새 인스턴스를 초기화합니다.

오버로드

ConcurrentDictionary<TKey,TValue>()

기본 동시성 수준과 기본 초기 용량을 갖고 있으며 키 형식에 대한 기본 비교자를 사용하는 빈 ConcurrentDictionary<TKey,TValue> 클래스의 새 인스턴스를 초기화합니다.

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

지정된 ConcurrentDictionary<TKey,TValue>에서 복사된 요소를 포함하고, 기본 동시성 수준과 기본 초기 용량을 갖고 있으며, 키 형식에 대한 기본 비교자를 사용하는 IEnumerable<T> 클래스의 새 인스턴스를 초기화합니다.

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

기본 동시성 수준과 용량을 갖고 있고 지정된 ConcurrentDictionary<TKey,TValue>를 사용하는 비어 있는 IEqualityComparer<T> 클래스의 새 인스턴스를 초기화합니다.

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

지정된 에서 복사된 요소가 기본 동시성 수준을 가지고, 기본 초기 용량을 가지며, 지정된 IEnumerableIEqualityComparer<T>를 사용하는 클래스의 새 ConcurrentDictionary<TKey,TValue> instance 초기화합니다.

ConcurrentDictionary<TKey,TValue>(Int32, Int32)

지정된 동시성 수준과 용량을 갖고 있으며 키 형식에 대한 기본 비교자를 사용하는 비어 있는 ConcurrentDictionary<TKey,TValue> 클래스의 새 인스턴스를 초기화합니다.

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

지정한 ConcurrentDictionary<TKey,TValue>에서 복사된 요소를 포함하고 지정한 IEnumerable을 사용하는 IEqualityComparer<T> 클래스의 새 인스턴스를 초기화합니다.

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

지정된 동시성 수준과 지정된 초기 용량을 갖고 있고 지정된 ConcurrentDictionary<TKey,TValue>를 사용하는 빈 IEqualityComparer<T> 클래스의 새 인스턴스를 초기화합니다.

ConcurrentDictionary<TKey,TValue>()

Source:
ConcurrentDictionary.cs
Source:
ConcurrentDictionary.cs
Source:
ConcurrentDictionary.cs

기본 동시성 수준과 기본 초기 용량을 갖고 있으며 키 형식에 대한 기본 비교자를 사용하는 빈 ConcurrentDictionary<TKey,TValue> 클래스의 새 인스턴스를 초기화합니다.

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

설명

기본 동시성 수준은 CPU 수와 같습니다. 동시성 수준이 높을수록 간섭 및 차단 없이 더 많은 동시 쓰기 작업이 발생할 수 있습니다. 동시성 수준 값이 높을수록 모든 잠금(예: 테이블 크기 조정 ToArrayCount)이 더 비싸야 하는 작업도 발생합니다. 버킷의 초기 수를 나타내는 기본 용량(DEFAULT_CAPACITY)은 매우 작은 사전의 크기와 큰 사전을 생성할 때 크기 조정 횟수 간의 절상입니다. 또한 용량을 작은 소수로 나눌 수 없습니다. 기본 용량은 31입니다.

추가 정보

적용 대상

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

Source:
ConcurrentDictionary.cs
Source:
ConcurrentDictionary.cs
Source:
ConcurrentDictionary.cs

지정된 ConcurrentDictionary<TKey,TValue>에서 복사된 요소를 포함하고, 기본 동시성 수준과 기본 초기 용량을 갖고 있으며, 키 형식에 대한 기본 비교자를 사용하는 IEnumerable<T> 클래스의 새 인스턴스를 초기화합니다.

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

매개 변수

collection
IEnumerable<KeyValuePair<TKey,TValue>>

요소가 새 IEnumerable<T>에 복사되는 ConcurrentDictionary<TKey,TValue>입니다.

예외

collection 또는 해당 키 중 하나는 입니다 null.

collection에 중복 키가 하나 이상 포함된 경우

추가 정보

적용 대상

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

Source:
ConcurrentDictionary.cs
Source:
ConcurrentDictionary.cs
Source:
ConcurrentDictionary.cs

기본 동시성 수준과 용량을 갖고 있고 지정된 ConcurrentDictionary<TKey,TValue>를 사용하는 비어 있는 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))

매개 변수

comparer
IEqualityComparer<TKey>

키를 비교할 때 사용하는 같음 비교 구현입니다.

예외

comparernull입니다.

추가 정보

적용 대상

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

Source:
ConcurrentDictionary.cs
Source:
ConcurrentDictionary.cs
Source:
ConcurrentDictionary.cs

지정된 에서 복사된 요소가 기본 동시성 수준을 가지고, 기본 초기 용량을 가지며, 지정된 IEnumerableIEqualityComparer<T>를 사용하는 클래스의 새 ConcurrentDictionary<TKey,TValue> instance 초기화합니다.

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

매개 변수

collection
IEnumerable<KeyValuePair<TKey,TValue>>

요소가 새 IEnumerable<T>에 복사되는 ConcurrentDictionary<TKey,TValue>입니다.

comparer
IEqualityComparer<TKey>

키를 비교할 때 사용하는 IEqualityComparer<T> 구현입니다.

예외

collection 또는 comparernull인 경우

추가 정보

적용 대상

ConcurrentDictionary<TKey,TValue>(Int32, Int32)

Source:
ConcurrentDictionary.cs
Source:
ConcurrentDictionary.cs
Source:
ConcurrentDictionary.cs

지정된 동시성 수준과 용량을 갖고 있으며 키 형식에 대한 기본 비교자를 사용하는 비어 있는 ConcurrentDictionary<TKey,TValue> 클래스의 새 인스턴스를 초기화합니다.

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)

매개 변수

concurrencyLevel
Int32

를 동시에 업데이트하거나 .NET 8 이상에서만 -1을 업데이트 ConcurrentDictionary<TKey,TValue> 하여 기본 동시성 수준을 나타내는 예상 스레드 수입니다.

capacity
Int32

ConcurrentDictionary<TKey,TValue>에 포함될 수 있는 초기 요소 수입니다.

예외

concurrencyLevel 가 1보다 작습니다.

또는

capacity 가 0보다 작습니다.

추가 정보

적용 대상

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

Source:
ConcurrentDictionary.cs
Source:
ConcurrentDictionary.cs
Source:
ConcurrentDictionary.cs

지정한 ConcurrentDictionary<TKey,TValue>에서 복사된 요소를 포함하고 지정한 IEnumerable을 사용하는 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);
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))

매개 변수

concurrencyLevel
Int32

를 동시에 업데이트하거나 .NET 8 이상에서만 -1을 업데이트 ConcurrentDictionary<TKey,TValue> 하여 기본 동시성 수준을 나타내는 예상 스레드 수입니다.

collection
IEnumerable<KeyValuePair<TKey,TValue>>

요소가 새 IEnumerable<T>에 복사되는 ConcurrentDictionary<TKey,TValue>입니다.

comparer
IEqualityComparer<TKey>

키를 비교할 때 사용하는 IEqualityComparer<T> 구현입니다.

예외

collection 또는 comparernull인 경우

concurrencyLevel가 1보다 작습니다.

collection에 중복 키가 하나 이상 포함된 경우

추가 정보

적용 대상

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

Source:
ConcurrentDictionary.cs
Source:
ConcurrentDictionary.cs
Source:
ConcurrentDictionary.cs

지정된 동시성 수준과 지정된 초기 용량을 갖고 있고 지정된 ConcurrentDictionary<TKey,TValue>를 사용하는 빈 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))

매개 변수

concurrencyLevel
Int32

를 동시에 업데이트하거나 .NET 8 이상에서만 -1을 업데이트 ConcurrentDictionary<TKey,TValue> 하여 기본 동시성 수준을 나타내는 예상 스레드 수입니다.

capacity
Int32

ConcurrentDictionary<TKey,TValue>에 포함될 수 있는 초기 요소 수입니다.

comparer
IEqualityComparer<TKey>

키를 비교할 때 사용하는 IEqualityComparer<T> 구현입니다.

예외

comparer이(가) null인 경우

concurrencyLevel 또는 capacity가 1 미만입니다.

추가 정보

적용 대상