ConcurrentDictionary<TKey, TValue> Class
[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]
Represents a thread-safe collection of key-value pairs that can be accessed by multiple threads concurrently.
Namespace: System.Collections.Concurrent
Assembly: mscorlib (in mscorlib.dll)
[SerializableAttribute] [ComVisibleAttribute(false)] [HostProtectionAttribute(SecurityAction.LinkDemand, Synchronization = true, ExternalThreading = true)] public class ConcurrentDictionary<TKey, TValue> : IDictionary<TKey, TValue>, ICollection<KeyValuePair<TKey, TValue>>, IEnumerable<KeyValuePair<TKey, TValue>>, IDictionary, ICollection, IEnumerable
Type Parameters
- TKey
The type of the keys in the dictionary.
- TValue
The type of the values in the dictionary.
The ConcurrentDictionary<TKey, TValue> type exposes the following members.
| Name | Description | |
|---|---|---|
|
ConcurrentDictionary<TKey, TValue>() | 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>>) | Initializes a new instance of the ConcurrentDictionary<TKey, TValue> class that contains elements copied from the specified System.Collections.IEnumerable{KeyValuePair{TKey,TValue}}, has the default concurrency level, has the default initial capacity, and uses the default comparer for the key type. |
|
ConcurrentDictionary<TKey, TValue>(IEqualityComparer<TKey>) | Initializes a new instance of the ConcurrentDictionary<TKey, TValue> class that is empty, has the default concurrency level and capacity, and uses the specified System.Collections.Generic.IEqualityComparer{TKey}. |
|
ConcurrentDictionary<TKey, TValue>(IEnumerable<KeyValuePair<TKey, TValue>>, IEqualityComparer<TKey>) | 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 System.Collections.Generic.IEqualityComparer{TKey}. |
|
ConcurrentDictionary<TKey, TValue>(Int32, Int32) | 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>) | 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{TKey}. |
|
ConcurrentDictionary<TKey, TValue>(Int32, Int32, IEqualityComparer<TKey>) | 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 System.Collections.Generic.IEqualityComparer{TKey}. |
| Name | Description | |
|---|---|---|
|
Count | Gets the number of key/value pairs contained in the ConcurrentDictionary<TKey, TValue>. |
|
IsEmpty | Gets a value that indicates whether the ConcurrentDictionary<TKey, TValue> is empty. |
|
Item | Gets or sets the value associated with the specified key. |
|
Keys | Gets a collection containing the keys in the System.Collections.Generic.Dictionary{TKey,TValue}. |
|
Values | Gets a collection containing the values in the System.Collections.Generic.Dictionary{TKey,TValue}. |
| Name | Description | |
|---|---|---|
|
AddOrUpdate(TKey, Func<TKey, TValue>, Func<TKey, TValue, TValue>) | Adds a key/value pair to the ConcurrentDictionary<TKey, TValue> if the key does not already exist, or updates a key/value pair in the ConcurrentDictionary<TKey, TValue> if the key already exists. |
|
AddOrUpdate(TKey, TValue, Func<TKey, TValue, TValue>) | Adds a key/value pair to the ConcurrentDictionary<TKey, TValue> if the key does not already exist, or updates a key/value pair in the ConcurrentDictionary<TKey, TValue> if the key already exists. |
|
Clear | Removes all keys and values from the ConcurrentDictionary<TKey, TValue>. |
|
ContainsKey | Determines whether the ConcurrentDictionary<TKey, TValue> contains the specified key. |
|
Equals(Object) | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) |
|
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) |
|
GetEnumerator | Returns an enumerator that iterates through the ConcurrentDictionary<TKey, TValue>. |
|
GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
|
GetOrAdd(TKey, Func<TKey, TValue>) | Adds a key/value pair to the ConcurrentDictionary<TKey, TValue> if the key does not already exist. |
|
GetOrAdd(TKey, TValue) | Adds a key/value pair to the ConcurrentDictionary<TKey, TValue> if the key does not already exist. |
|
GetType | Gets the Type of the current instance. (Inherited from Object.) |
|
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
|
ToArray | Copies the key and value pairs stored in the ConcurrentDictionary<TKey, TValue> to a new array. |
|
ToString | Returns a string that represents the current object. (Inherited from Object.) |
|
TryAdd | Attempts to add the specified key and value to the ConcurrentDictionary<TKey, TValue>. |
|
TryGetValue | Attempts to get the value associated with the specified key from the ConcurrentDictionary<TKey, TValue>. |
|
TryRemove | Attempts to remove and return the value with the specified key from the ConcurrentDictionary<TKey, TValue>. |
|
TryUpdate | Compares the existing value for the specified key with a specified value, and if they are equal, updates the key with a third value. |
| Name | Description | |
|---|---|---|
|
Aggregate<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, KeyValuePair<TKey, TValue>, KeyValuePair<TKey, TValue>>) | Overloaded. Applies an accumulator function over a sequence. (Defined by Enumerable.) |
|
Aggregate<KeyValuePair<TKey, TValue>, TAccumulate>(TAccumulate, Func<TAccumulate, KeyValuePair<TKey, TValue>, TAccumulate>) | Overloaded. Applies an accumulator function over a sequence. The specified seed value is used as the initial accumulator value. (Defined by Enumerable.) |
|
Aggregate<KeyValuePair<TKey, TValue>, TAccumulate, TResult>(TAccumulate, Func<TAccumulate, KeyValuePair<TKey, TValue>, TAccumulate>, Func<TAccumulate, TResult>) | Overloaded. Applies an accumulator function over a sequence. The specified seed value is used as the initial accumulator value, and the specified function is used to select the result value. (Defined by Enumerable.) |
|
All<KeyValuePair<TKey, TValue>> | Determines whether all elements of a sequence satisfy a condition. (Defined by Enumerable.) |
|
Any<KeyValuePair<TKey, TValue>>() | Overloaded. Determines whether a sequence contains any elements. (Defined by Enumerable.) |
|
Any<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Boolean>) | Overloaded. Determines whether any element of a sequence satisfies a condition. (Defined by Enumerable.) |
|
AsEnumerable<KeyValuePair<TKey, TValue>> | Returns the input typed as IEnumerable<T>. (Defined by Enumerable.) |
|
AsParallel() | Overloaded. Enables parallelization of a query. (Defined by ParallelEnumerable.) |
|
AsParallel<KeyValuePair<TKey, TValue>>() | Overloaded. Enables parallelization of a query. (Defined by ParallelEnumerable.) |
|
AsQueryable() | Overloaded. Converts an IEnumerable to an IQueryable. (Defined by Queryable.) |
|
AsQueryable<KeyValuePair<TKey, TValue>>() | Overloaded. Converts a generic IEnumerable<T> to a generic IQueryable<T>. (Defined by Queryable.) |
|
Average<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Decimal>>) | Overloaded. Computes the average of a sequence of nullable Decimal values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Average<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Double>>) | Overloaded. Computes the average of a sequence of nullable Double values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Average<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Int32>) | Overloaded. Computes the average of a sequence of Int32 values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Average<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Int32>>) | Overloaded. Computes the average of a sequence of nullable Int32 values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Average<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Int64>) | Overloaded. Computes the average of a sequence of Int64 values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Average<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Int64>>) | Overloaded. Computes the average of a sequence of nullable Int64 values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Average<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Single>) | Overloaded. Computes the average of a sequence of Single values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Average<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Single>>) | Overloaded. Computes the average of a sequence of nullable Single values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Average<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Double>) | Overloaded. Computes the average of a sequence of Double values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Average<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Decimal>) | Overloaded. Computes the average of a sequence of Decimal values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Cast<TResult> | Casts the elements of an IEnumerable to the specified type. (Defined by Enumerable.) |
|
Concat<KeyValuePair<TKey, TValue>> | Concatenates two sequences. (Defined by Enumerable.) |
|
Contains<KeyValuePair<TKey, TValue>>(KeyValuePair<TKey, TValue>) | Overloaded. Determines whether a sequence contains a specified element by using the default equality comparer. (Defined by Enumerable.) |
|
Contains<KeyValuePair<TKey, TValue>>(KeyValuePair<TKey, TValue>, IEqualityComparer<KeyValuePair<TKey, TValue>>) | Overloaded. Determines whether a sequence contains a specified element by using a specified IEqualityComparer<T>. (Defined by Enumerable.) |
|
Count<KeyValuePair<TKey, TValue>>() | Overloaded. Returns the number of elements in a sequence. (Defined by Enumerable.) |
|
Count<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Boolean>) | Overloaded. Returns a number that represents how many elements in the specified sequence satisfy a condition. (Defined by Enumerable.) |
|
DefaultIfEmpty<KeyValuePair<TKey, TValue>>() | Overloaded. Returns the elements of the specified sequence or the type parameter's default value in a singleton collection if the sequence is empty. (Defined by Enumerable.) |
|
DefaultIfEmpty<KeyValuePair<TKey, TValue>>(KeyValuePair<TKey, TValue>) | Overloaded. Returns the elements of the specified sequence or the specified value in a singleton collection if the sequence is empty. (Defined by Enumerable.) |
|
Distinct<KeyValuePair<TKey, TValue>>() | Overloaded. Returns distinct elements from a sequence by using the default equality comparer to compare values. (Defined by Enumerable.) |
|
Distinct<KeyValuePair<TKey, TValue>>(IEqualityComparer<KeyValuePair<TKey, TValue>>) | Overloaded. Returns distinct elements from a sequence by using a specified IEqualityComparer<T> to compare values. (Defined by Enumerable.) |
|
ElementAt<KeyValuePair<TKey, TValue>> | Returns the element at a specified index in a sequence. (Defined by Enumerable.) |
|
ElementAtOrDefault<KeyValuePair<TKey, TValue>> | Returns the element at a specified index in a sequence or a default value if the index is out of range. (Defined by Enumerable.) |
|
Except<KeyValuePair<TKey, TValue>>(IEnumerable<KeyValuePair<TKey, TValue>>) | Overloaded. Produces the set difference of two sequences by using the default equality comparer to compare values. (Defined by Enumerable.) |
|
Except<KeyValuePair<TKey, TValue>>(IEnumerable<KeyValuePair<TKey, TValue>>, IEqualityComparer<KeyValuePair<TKey, TValue>>) | Overloaded. Produces the set difference of two sequences by using the specified IEqualityComparer<T> to compare values. (Defined by Enumerable.) |
|
First<KeyValuePair<TKey, TValue>>() | Overloaded. Returns the first element of a sequence. (Defined by Enumerable.) |
|
First<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Boolean>) | Overloaded. Returns the first element in a sequence that satisfies a specified condition. (Defined by Enumerable.) |
|
FirstOrDefault<KeyValuePair<TKey, TValue>>() | Overloaded. Returns the first element of a sequence, or a default value if the sequence contains no elements. (Defined by Enumerable.) |
|
FirstOrDefault<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Boolean>) | Overloaded. Returns the first element of the sequence that satisfies a condition or a default value if no such element is found. (Defined by Enumerable.) |
|
GroupBy<KeyValuePair<TKey, TValue>, TKey>(Func<KeyValuePair<TKey, TValue>, TKey>) | Overloaded. Groups the elements of a sequence according to a specified key selector function. (Defined by Enumerable.) |
|
GroupBy<KeyValuePair<TKey, TValue>, TKey>(Func<KeyValuePair<TKey, TValue>, TKey>, IEqualityComparer<TKey>) | Overloaded. Groups the elements of a sequence according to a specified key selector function and compares the keys by using a specified comparer. (Defined by Enumerable.) |
|
GroupBy<KeyValuePair<TKey, TValue>, TKey, TElement>(Func<KeyValuePair<TKey, TValue>, TKey>, Func<KeyValuePair<TKey, TValue>, TElement>) | Overloaded. Groups the elements of a sequence according to a specified key selector function and projects the elements for each group by using a specified function. (Defined by Enumerable.) |
|
GroupBy<KeyValuePair<TKey, TValue>, TKey, TResult>(Func<KeyValuePair<TKey, TValue>, TKey>, Func<TKey, IEnumerable<KeyValuePair<TKey, TValue>>, TResult>) | Overloaded. Groups the elements of a sequence according to a specified key selector function and creates a result value from each group and its key. (Defined by Enumerable.) |
|
GroupBy<KeyValuePair<TKey, TValue>, TKey, TElement>(Func<KeyValuePair<TKey, TValue>, TKey>, Func<KeyValuePair<TKey, TValue>, TElement>, IEqualityComparer<TKey>) | Overloaded. Groups the elements of a sequence according to a key selector function. The keys are compared by using a comparer and each group's elements are projected by using a specified function. (Defined by Enumerable.) |
|
GroupBy<KeyValuePair<TKey, TValue>, TKey, TResult>(Func<KeyValuePair<TKey, TValue>, TKey>, Func<TKey, IEnumerable<KeyValuePair<TKey, TValue>>, TResult>, IEqualityComparer<TKey>) | Overloaded. Groups the elements of a sequence according to a specified key selector function and creates a result value from each group and its key. The keys are compared by using a specified comparer. (Defined by Enumerable.) |
|
GroupBy<KeyValuePair<TKey, TValue>, TKey, TElement, TResult>(Func<KeyValuePair<TKey, TValue>, TKey>, Func<KeyValuePair<TKey, TValue>, TElement>, Func<TKey, IEnumerable<TElement>, TResult>) | Overloaded. Groups the elements of a sequence according to a specified key selector function and creates a result value from each group and its key. The elements of each group are projected by using a specified function. (Defined by Enumerable.) |
|
GroupBy<KeyValuePair<TKey, TValue>, TKey, TElement, TResult>(Func<KeyValuePair<TKey, TValue>, TKey>, Func<KeyValuePair<TKey, TValue>, TElement>, Func<TKey, IEnumerable<TElement>, TResult>, IEqualityComparer<TKey>) | Overloaded. Groups the elements of a sequence according to a specified key selector function and creates a result value from each group and its key. Key values are compared by using a specified comparer, and the elements of each group are projected by using a specified function. (Defined by Enumerable.) |
|
GroupJoin<KeyValuePair<TKey, TValue>, TInner, TKey, TResult>(IEnumerable<TInner>, Func<KeyValuePair<TKey, TValue>, TKey>, Func<TInner, TKey>, Func<KeyValuePair<TKey, TValue>, IEnumerable<TInner>, TResult>) | Overloaded. Correlates the elements of two sequences based on equality of keys and groups the results. The default equality comparer is used to compare keys. (Defined by Enumerable.) |
|
GroupJoin<KeyValuePair<TKey, TValue>, TInner, TKey, TResult>(IEnumerable<TInner>, Func<KeyValuePair<TKey, TValue>, TKey>, Func<TInner, TKey>, Func<KeyValuePair<TKey, TValue>, IEnumerable<TInner>, TResult>, IEqualityComparer<TKey>) | Overloaded. Correlates the elements of two sequences based on key equality and groups the results. A specified IEqualityComparer<T> is used to compare keys. (Defined by Enumerable.) |
|
Intersect<KeyValuePair<TKey, TValue>>(IEnumerable<KeyValuePair<TKey, TValue>>) | Overloaded. Produces the set intersection of two sequences by using the default equality comparer to compare values. (Defined by Enumerable.) |
|
Intersect<KeyValuePair<TKey, TValue>>(IEnumerable<KeyValuePair<TKey, TValue>>, IEqualityComparer<KeyValuePair<TKey, TValue>>) | Overloaded. Produces the set intersection of two sequences by using the specified IEqualityComparer<T> to compare values. (Defined by Enumerable.) |
|
Join<KeyValuePair<TKey, TValue>, TInner, TKey, TResult>(IEnumerable<TInner>, Func<KeyValuePair<TKey, TValue>, TKey>, Func<TInner, TKey>, Func<KeyValuePair<TKey, TValue>, TInner, TResult>) | Overloaded. Correlates the elements of two sequences based on matching keys. The default equality comparer is used to compare keys. (Defined by Enumerable.) |
|
Join<KeyValuePair<TKey, TValue>, TInner, TKey, TResult>(IEnumerable<TInner>, Func<KeyValuePair<TKey, TValue>, TKey>, Func<TInner, TKey>, Func<KeyValuePair<TKey, TValue>, TInner, TResult>, IEqualityComparer<TKey>) | Overloaded. Correlates the elements of two sequences based on matching keys. A specified IEqualityComparer<T> is used to compare keys. (Defined by Enumerable.) |
|
Last<KeyValuePair<TKey, TValue>>() | Overloaded. Returns the last element of a sequence. (Defined by Enumerable.) |
|
Last<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Boolean>) | Overloaded. Returns the last element of a sequence that satisfies a specified condition. (Defined by Enumerable.) |
|
LastOrDefault<KeyValuePair<TKey, TValue>>() | Overloaded. Returns the last element of a sequence, or a default value if the sequence contains no elements. (Defined by Enumerable.) |
|
LastOrDefault<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Boolean>) | Overloaded. Returns the last element of a sequence that satisfies a condition or a default value if no such element is found. (Defined by Enumerable.) |
|
LongCount<KeyValuePair<TKey, TValue>>() | Overloaded. Returns an Int64 that represents the total number of elements in a sequence. (Defined by Enumerable.) |
|
LongCount<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Boolean>) | Overloaded. Returns an Int64 that represents how many elements in a sequence satisfy a condition. (Defined by Enumerable.) |
|
Max<KeyValuePair<TKey, TValue>>() | Overloaded. Returns the maximum value in a generic sequence. (Defined by Enumerable.) |
|
Max<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Decimal>>) | Overloaded. Invokes a transform function on each element of a sequence and returns the maximum nullable Decimal value. (Defined by Enumerable.) |
|
Max<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Double>>) | Overloaded. Invokes a transform function on each element of a sequence and returns the maximum nullable Double value. (Defined by Enumerable.) |
|
Max<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Int32>) | Overloaded. Invokes a transform function on each element of a sequence and returns the maximum Int32 value. (Defined by Enumerable.) |
|
Max<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Int32>>) | Overloaded. Invokes a transform function on each element of a sequence and returns the maximum nullable Int32 value. (Defined by Enumerable.) |
|
Max<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Int64>) | Overloaded. Invokes a transform function on each element of a sequence and returns the maximum Int64 value. (Defined by Enumerable.) |
|
Max<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Int64>>) | Overloaded. Invokes a transform function on each element of a sequence and returns the maximum nullable Int64 value. (Defined by Enumerable.) |
|
Max<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Single>) | Overloaded. Invokes a transform function on each element of a sequence and returns the maximum Single value. (Defined by Enumerable.) |
|
Max<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Single>>) | Overloaded. Invokes a transform function on each element of a sequence and returns the maximum nullable Single value. (Defined by Enumerable.) |
|
Max<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Double>) | Overloaded. Invokes a transform function on each element of a sequence and returns the maximum Double value. (Defined by Enumerable.) |
|
Max<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Decimal>) | Overloaded. Invokes a transform function on each element of a sequence and returns the maximum Decimal value. (Defined by Enumerable.) |
|
Max<KeyValuePair<TKey, TValue>, TResult>(Func<KeyValuePair<TKey, TValue>, TResult>) | Overloaded. Invokes a transform function on each element of a generic sequence and returns the maximum resulting value. (Defined by Enumerable.) |
|
Min<KeyValuePair<TKey, TValue>>() | Overloaded. Returns the minimum value in a generic sequence. (Defined by Enumerable.) |
|
Min<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Decimal>>) | Overloaded. Invokes a transform function on each element of a sequence and returns the minimum nullable Decimal value. (Defined by Enumerable.) |
|
Min<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Double>>) | Overloaded. Invokes a transform function on each element of a sequence and returns the minimum nullable Double value. (Defined by Enumerable.) |
|
Min<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Int32>) | Overloaded. Invokes a transform function on each element of a sequence and returns the minimum Int32 value. (Defined by Enumerable.) |
|
Min<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Int32>>) | Overloaded. Invokes a transform function on each element of a sequence and returns the minimum nullable Int32 value. (Defined by Enumerable.) |
|
Min<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Int64>) | Overloaded. Invokes a transform function on each element of a sequence and returns the minimum Int64 value. (Defined by Enumerable.) |
|
Min<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Int64>>) | Overloaded. Invokes a transform function on each element of a sequence and returns the minimum nullable Int64 value. (Defined by Enumerable.) |
|
Min<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Single>) | Overloaded. Invokes a transform function on each element of a sequence and returns the minimum Single value. (Defined by Enumerable.) |
|
Min<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Single>>) | Overloaded. Invokes a transform function on each element of a sequence and returns the minimum nullable Single value. (Defined by Enumerable.) |
|
Min<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Double>) | Overloaded. Invokes a transform function on each element of a sequence and returns the minimum Double value. (Defined by Enumerable.) |
|
Min<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Decimal>) | Overloaded. Invokes a transform function on each element of a sequence and returns the minimum Decimal value. (Defined by Enumerable.) |
|
Min<KeyValuePair<TKey, TValue>, TResult>(Func<KeyValuePair<TKey, TValue>, TResult>) | Overloaded. Invokes a transform function on each element of a generic sequence and returns the minimum resulting value. (Defined by Enumerable.) |
|
OfType<TResult> | Filters the elements of an IEnumerable based on a specified type. (Defined by Enumerable.) |
|
OrderBy<KeyValuePair<TKey, TValue>, TKey>(Func<KeyValuePair<TKey, TValue>, TKey>) | Overloaded. Sorts the elements of a sequence in ascending order according to a key. (Defined by Enumerable.) |
|
OrderBy<KeyValuePair<TKey, TValue>, TKey>(Func<KeyValuePair<TKey, TValue>, TKey>, IComparer<TKey>) | Overloaded. Sorts the elements of a sequence in ascending order by using a specified comparer. (Defined by Enumerable.) |
|
OrderByDescending<KeyValuePair<TKey, TValue>, TKey>(Func<KeyValuePair<TKey, TValue>, TKey>) | Overloaded. Sorts the elements of a sequence in descending order according to a key. (Defined by Enumerable.) |
|
OrderByDescending<KeyValuePair<TKey, TValue>, TKey>(Func<KeyValuePair<TKey, TValue>, TKey>, IComparer<TKey>) | Overloaded. Sorts the elements of a sequence in descending order by using a specified comparer. (Defined by Enumerable.) |
|
Reverse<KeyValuePair<TKey, TValue>> | Inverts the order of the elements in a sequence. (Defined by Enumerable.) |
|
Select<KeyValuePair<TKey, TValue>, TResult>(Func<KeyValuePair<TKey, TValue>, TResult>) | Overloaded. Projects each element of a sequence into a new form. (Defined by Enumerable.) |
|
Select<KeyValuePair<TKey, TValue>, TResult>(Func<KeyValuePair<TKey, TValue>, Int32, TResult>) | Overloaded. Projects each element of a sequence into a new form by incorporating the element's index. (Defined by Enumerable.) |
|
SelectMany<KeyValuePair<TKey, TValue>, TResult>(Func<KeyValuePair<TKey, TValue>, IEnumerable<TResult>>) | Overloaded. Projects each element of a sequence to an IEnumerable<T> and flattens the resulting sequences into one sequence. (Defined by Enumerable.) |
|
SelectMany<KeyValuePair<TKey, TValue>, TResult>(Func<KeyValuePair<TKey, TValue>, Int32, IEnumerable<TResult>>) | Overloaded. Projects each element of a sequence to an IEnumerable<T>, and flattens the resulting sequences into one sequence. The index of each source element is used in the projected form of that element. (Defined by Enumerable.) |
|
SelectMany<KeyValuePair<TKey, TValue>, TCollection, TResult>(Func<KeyValuePair<TKey, TValue>, Int32, IEnumerable<TCollection>>, Func<KeyValuePair<TKey, TValue>, TCollection, TResult>) | Overloaded. Projects each element of a sequence to an IEnumerable<T>, flattens the resulting sequences into one sequence, and invokes a result selector function on each element therein. The index of each source element is used in the intermediate projected form of that element. (Defined by Enumerable.) |
|
SelectMany<KeyValuePair<TKey, TValue>, TCollection, TResult>(Func<KeyValuePair<TKey, TValue>, IEnumerable<TCollection>>, Func<KeyValuePair<TKey, TValue>, TCollection, TResult>) | Overloaded. Projects each element of a sequence to an IEnumerable<T>, flattens the resulting sequences into one sequence, and invokes a result selector function on each element therein. (Defined by Enumerable.) |
|
SequenceEqual<KeyValuePair<TKey, TValue>>(IEnumerable<KeyValuePair<TKey, TValue>>) | Overloaded. Determines whether two sequences are equal by comparing the elements by using the default equality comparer for their type. (Defined by Enumerable.) |
|
SequenceEqual<KeyValuePair<TKey, TValue>>(IEnumerable<KeyValuePair<TKey, TValue>>, IEqualityComparer<KeyValuePair<TKey, TValue>>) | Overloaded. Determines whether two sequences are equal by comparing their elements by using a specified IEqualityComparer<T>. (Defined by Enumerable.) |
|
Single<KeyValuePair<TKey, TValue>>() | Overloaded. Returns the only element of a sequence, and throws an exception if there is not exactly one element in the sequence. (Defined by Enumerable.) |
|
Single<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Boolean>) | Overloaded. Returns the only element of a sequence that satisfies a specified condition, and throws an exception if more than one such element exists. (Defined by Enumerable.) |
|
SingleOrDefault<KeyValuePair<TKey, TValue>>() | Overloaded. Returns the only element of a sequence, or a default value if the sequence is empty; this method throws an exception if there is more than one element in the sequence. (Defined by Enumerable.) |
|
SingleOrDefault<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Boolean>) | Overloaded. Returns the only element of a sequence that satisfies a specified condition or a default value if no such element exists; this method throws an exception if more than one element satisfies the condition. (Defined by Enumerable.) |
|
Skip<KeyValuePair<TKey, TValue>> | Bypasses a specified number of elements in a sequence and then returns the remaining elements. (Defined by Enumerable.) |
|
SkipWhile<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Boolean>) | Overloaded. Bypasses elements in a sequence as long as a specified condition is true and then returns the remaining elements. (Defined by Enumerable.) |
|
SkipWhile<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Int32, Boolean>) | Overloaded. Bypasses elements in a sequence as long as a specified condition is true and then returns the remaining elements. The element's index is used in the logic of the predicate function. (Defined by Enumerable.) |
|
Sum<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Decimal>>) | Overloaded. Computes the sum of the sequence of nullable Decimal values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Sum<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Double>>) | Overloaded. Computes the sum of the sequence of nullable Double values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Sum<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Int32>) | Overloaded. Computes the sum of the sequence of Int32 values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Sum<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Int32>>) | Overloaded. Computes the sum of the sequence of nullable Int32 values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Sum<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Int64>) | Overloaded. Computes the sum of the sequence of Int64 values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Sum<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Int64>>) | Overloaded. Computes the sum of the sequence of nullable Int64 values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Sum<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Single>) | Overloaded. Computes the sum of the sequence of Single values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Sum<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Nullable<Single>>) | Overloaded. Computes the sum of the sequence of nullable Single values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Sum<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Double>) | Overloaded. Computes the sum of the sequence of Double values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Sum<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Decimal>) | Overloaded. Computes the sum of the sequence of Decimal values that are obtained by invoking a transform function on each element of the input sequence. (Defined by Enumerable.) |
|
Take<KeyValuePair<TKey, TValue>> | Returns a specified number of contiguous elements from the start of a sequence. (Defined by Enumerable.) |
|
TakeWhile<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Boolean>) | Overloaded. Returns elements from a sequence as long as a specified condition is true. (Defined by Enumerable.) |
|
TakeWhile<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Int32, Boolean>) | Overloaded. Returns elements from a sequence as long as a specified condition is true. The element's index is used in the logic of the predicate function. (Defined by Enumerable.) |
|
ToArray<KeyValuePair<TKey, TValue>> | Creates an array from a IEnumerable<T>. (Defined by Enumerable.) |
|
ToDictionary<KeyValuePair<TKey, TValue>, TKey>(Func<KeyValuePair<TKey, TValue>, TKey>) | Overloaded. Creates a Dictionary<TKey, TValue> from an IEnumerable<T> according to a specified key selector function. (Defined by Enumerable.) |
|
ToDictionary<KeyValuePair<TKey, TValue>, TKey>(Func<KeyValuePair<TKey, TValue>, TKey>, IEqualityComparer<TKey>) | Overloaded. Creates a Dictionary<TKey, TValue> from an IEnumerable<T> according to a specified key selector function and key comparer. (Defined by Enumerable.) |
|
ToDictionary<KeyValuePair<TKey, TValue>, TKey, TElement>(Func<KeyValuePair<TKey, TValue>, TKey>, Func<KeyValuePair<TKey, TValue>, TElement>) | Overloaded. Creates a Dictionary<TKey, TValue> from an IEnumerable<T> according to specified key selector and element selector functions. (Defined by Enumerable.) |
|
ToDictionary<KeyValuePair<TKey, TValue>, TKey, TElement>(Func<KeyValuePair<TKey, TValue>, TKey>, Func<KeyValuePair<TKey, TValue>, TElement>, IEqualityComparer<TKey>) | Overloaded. Creates a Dictionary<TKey, TValue> from an IEnumerable<T> according to a specified key selector function, a comparer, and an element selector function. (Defined by Enumerable.) |
|
ToList<KeyValuePair<TKey, TValue>> | Creates a List<T> from an IEnumerable<T>. (Defined by Enumerable.) |
|
ToLookup<KeyValuePair<TKey, TValue>, TKey>(Func<KeyValuePair<TKey, TValue>, TKey>) | Overloaded. Creates a Lookup<TKey, TElement> from an IEnumerable<T> according to a specified key selector function. (Defined by Enumerable.) |
|
ToLookup<KeyValuePair<TKey, TValue>, TKey>(Func<KeyValuePair<TKey, TValue>, TKey>, IEqualityComparer<TKey>) | Overloaded. Creates a Lookup<TKey, TElement> from an IEnumerable<T> according to a specified key selector function and key comparer. (Defined by Enumerable.) |
|
ToLookup<KeyValuePair<TKey, TValue>, TKey, TElement>(Func<KeyValuePair<TKey, TValue>, TKey>, Func<KeyValuePair<TKey, TValue>, TElement>) | Overloaded. Creates a Lookup<TKey, TElement> from an IEnumerable<T> according to specified key selector and element selector functions. (Defined by Enumerable.) |
|
ToLookup<KeyValuePair<TKey, TValue>, TKey, TElement>(Func<KeyValuePair<TKey, TValue>, TKey>, Func<KeyValuePair<TKey, TValue>, TElement>, IEqualityComparer<TKey>) | Overloaded. Creates a Lookup<TKey, TElement> from an IEnumerable<T> according to a specified key selector function, a comparer and an element selector function. (Defined by Enumerable.) |
|
Union<KeyValuePair<TKey, TValue>>(IEnumerable<KeyValuePair<TKey, TValue>>) | Overloaded. Produces the set union of two sequences by using the default equality comparer. (Defined by Enumerable.) |
|
Union<KeyValuePair<TKey, TValue>>(IEnumerable<KeyValuePair<TKey, TValue>>, IEqualityComparer<KeyValuePair<TKey, TValue>>) | Overloaded. Produces the set union of two sequences by using a specified IEqualityComparer<T>. (Defined by Enumerable.) |
|
Where<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Boolean>) | Overloaded. Filters a sequence of values based on a predicate. (Defined by Enumerable.) |
|
Where<KeyValuePair<TKey, TValue>>(Func<KeyValuePair<TKey, TValue>, Int32, Boolean>) | Overloaded. Filters a sequence of values based on a predicate. Each element's index is used in the logic of the predicate function. (Defined by Enumerable.) |
|
Zip<KeyValuePair<TKey, TValue>, TSecond, TResult> | Merges two sequences by using the specified predicate function. (Defined by Enumerable.) |
| Name | Description | |
|---|---|---|
|
ICollection<KeyValuePair<TKey, TValue>>.Add | Adds an item to the collection. |
|
ICollection<KeyValuePair<TKey, TValue>>.Contains | Gets whether the System.Collections.Generic.ICollection contains an element with the specified key. |
|
ICollection<KeyValuePair<TKey, TValue>>.CopyTo | Copies the elements of the ICollection to an array, starting at the specified array index. |
|
ICollection.CopyTo | Copies the elements of the ICollection to an array, starting at the specified array index. |
|
ICollection<KeyValuePair<TKey, TValue>>.IsReadOnly | Gets a value indicating whether the ICollection is read-only. |
|
ICollection.IsSynchronized | Gets a value indicating whether access to the ICollection is synchronized with the SyncRoot. |
|
ICollection<KeyValuePair<TKey, TValue>>.Remove | Removes the specified key/value pair from the collection. |
|
ICollection.SyncRoot | Gets an object that can be used to synchronize access to the ICollection. This property is not supported. |
|
IDictionary<TKey, TValue>.Add | Adds the specified key and value to the System.Collections.Generic.IDictionary{TKey,TValue}. |
|
IDictionary.Add | Adds the specified key and value to the dictionary. |
|
IDictionary.Contains | Gets whether the System.Collections.Generic.IDictionary{TKey,TValue} contains an element with the specified key. |
|
IDictionary.GetEnumerator | Provides an System.Collections.Generics.IDictionaryEnumerator for the System.Collections.Generic.IDictionary{TKey,TValue}. |
|
IDictionary.IsFixedSize | Gets a value indicating whether the System.Collections.Generic.IDictionary{TKey,TValue} has a fixed size. |
|
IDictionary.IsReadOnly | Gets a value indicating whether the System.Collections.Generic.IDictionary{TKey,TValue} is read-only. |
|
IDictionary.Item | Gets or sets the value associated with the specified key. |
|
IDictionary.Keys | Gets an ICollection containing the keys of the System.Collections.Generic.IDictionary{TKey,TValue}. |
|
IDictionary<TKey, TValue>.Remove | Removes the element with the specified key from the System.Collections.Generic.IDictionary{TKey,TValue}. |
|
IDictionary.Remove | Removes the element with the specified key from the IDictionary. |
|
IDictionary.Values | Gets an ICollection containing the values in the IDictionary. |
|
IEnumerable.GetEnumerator | Returns an enumerator that iterates through the ConcurrentDictionary<TKey, TValue>. |
For very large ConcurrentDictionary<TKey, TValue> objects, you can increase the maximum possible capacity to 2 billion on a 64-bit system by setting the <runtime> Element switch to 'true' in the run-time environment.
Note
|
|---|
|
The HostProtectionAttribute attribute applied to this type or member has the following Resources property value: Synchronization | ExternalThreading. The HostProtectionAttribute does not affect desktop applications (which are typically started by double-clicking an icon, typing a command, or entering a URL in a browser). For more information, see the HostProtectionAttribute class or SQL Server Programming and Host Protection Attributes. |
The following example shows how to construct a ConcurrentDictionary<TKey, TValue>:
class CD_Ctor { // Demonstrates: // ConcurrentDictionary<TKey, TValue> ctor(concurrencyLevel, initialCapacity) // ConcurrentDictionary<TKey, TValue>[TKey] static void Main() { // We know how many items we want to insert into the ConcurrentDictionary. // So set the initial capacity to some prime number above that, to ensure that // the ConcurrentDictionary does not need to be resized while initializing it. int NUMITEMS = 64; int initialCapacity = 101; // The higher the concurrencyLevel, the higher the theoretical number of operations // that could be performed concurrently on the ConcurrentDictionary. However, global // operations like resizing the dictionary take longer as the concurrencyLevel rises. // For the purposes of this example, we'll compromise at numCores * 2. int numProcs = Environment.ProcessorCount; int concurrencyLevel = numProcs * 2; // Construct the dictionary with the desired concurrencyLevel and initialCapacity ConcurrentDictionary<int, int> cd = new ConcurrentDictionary<int, int>(concurrencyLevel, initialCapacity); // Initialize the dictionary for (int i = 0; i < NUMITEMS; i++) cd[i] = i * i; Console.WriteLine("The square of 23 is {0} (should be {1})", cd[23], 23 * 23); } }
Windows 8 Consumer Preview, Windows Server 8 Beta, Windows 7, Windows Server 2008 SP2, 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.
Note