Share via


ImmutableInterlocked.GetOrAdd 方法

定义

重载

GetOrAdd<TKey,TValue,TArg>(ImmutableDictionary<TKey,TValue>, TKey, Func<TKey,TArg,TValue>, TArg)

从字典中获取指定键的值;如果未找到该键,则向字典中添加新值。

GetOrAdd<TKey,TValue>(ImmutableDictionary<TKey,TValue>, TKey, Func<TKey,TValue>)

从字典中获取指定键的值;如果未找到该键,则向字典中添加新值。

GetOrAdd<TKey,TValue>(ImmutableDictionary<TKey,TValue>, TKey, TValue)

从字典中获取指定键的值;如果未找到该键,则向字典中添加新值。

GetOrAdd<TKey,TValue,TArg>(ImmutableDictionary<TKey,TValue>, TKey, Func<TKey,TArg,TValue>, TArg)

Source:
ImmutableInterlocked.cs
Source:
ImmutableInterlocked.cs
Source:
ImmutableInterlocked.cs

从字典中获取指定键的值;如果未找到该键,则向字典中添加新值。

public:
generic <typename TKey, typename TValue, typename TArg>
 static TValue GetOrAdd(System::Collections::Immutable::ImmutableDictionary<TKey, TValue> ^ % location, TKey key, Func<TKey, TArg, TValue> ^ valueFactory, TArg factoryArgument);
public static TValue GetOrAdd<TKey,TValue,TArg> (ref System.Collections.Immutable.ImmutableDictionary<TKey,TValue> location, TKey key, Func<TKey,TArg,TValue> valueFactory, TArg factoryArgument);
static member GetOrAdd : ImmutableDictionary * 'Key * Func<'Key, 'Arg, 'Value> * 'Arg -> 'Value
Public Shared Function GetOrAdd(Of TKey, TValue, TArg) (ByRef location As ImmutableDictionary(Of TKey, TValue), key As TKey, valueFactory As Func(Of TKey, TArg, TValue), factoryArgument As TArg) As TValue

类型参数

TKey

集合中包含的键的类型。

TValue

集合中包含的值的类型。

TArg

提供给值工厂的参数的类型。

参数

location
ImmutableDictionary<TKey,TValue>

当指定的值不在字典中时要更新的变量或字段。

key
TKey

要检索或添加的值的键。

valueFactory
Func<TKey,TArg,TValue>

在未找到键时,为了获取要插入到字典中的值而要执行的函数。

factoryArgument
TArg

要传递给值工厂的参数。

返回

TValue

位于指定键处的值;如果该键不存在,则为 valueFactory

适用于

GetOrAdd<TKey,TValue>(ImmutableDictionary<TKey,TValue>, TKey, Func<TKey,TValue>)

Source:
ImmutableInterlocked.cs
Source:
ImmutableInterlocked.cs
Source:
ImmutableInterlocked.cs

从字典中获取指定键的值;如果未找到该键,则向字典中添加新值。

public:
generic <typename TKey, typename TValue>
 static TValue GetOrAdd(System::Collections::Immutable::ImmutableDictionary<TKey, TValue> ^ % location, TKey key, Func<TKey, TValue> ^ valueFactory);
public static TValue GetOrAdd<TKey,TValue> (ref System.Collections.Immutable.ImmutableDictionary<TKey,TValue> location, TKey key, Func<TKey,TValue> valueFactory);
static member GetOrAdd : ImmutableDictionary * 'Key * Func<'Key, 'Value> -> 'Value
Public Shared Function GetOrAdd(Of TKey, TValue) (ByRef location As ImmutableDictionary(Of TKey, TValue), key As TKey, valueFactory As Func(Of TKey, TValue)) As TValue

类型参数

TKey

集合中包含的键的类型。

TValue

集合中包含的值的类型。

参数

location
ImmutableDictionary<TKey,TValue>

如果指定的 不在字典中,则以原子方式更新的变量或字段。

key
TKey

要检索或添加的值的键。

valueFactory
Func<TKey,TValue>

在未找到键时,为了获取要插入到字典中的值而要执行的函数。 将不会多次调用此委托。

返回

TValue

位于指定键处的值;如果该键不存在,则为 valueFactory

适用于

GetOrAdd<TKey,TValue>(ImmutableDictionary<TKey,TValue>, TKey, TValue)

Source:
ImmutableInterlocked.cs
Source:
ImmutableInterlocked.cs
Source:
ImmutableInterlocked.cs

从字典中获取指定键的值;如果未找到该键,则向字典中添加新值。

public:
generic <typename TKey, typename TValue>
 static TValue GetOrAdd(System::Collections::Immutable::ImmutableDictionary<TKey, TValue> ^ % location, TKey key, TValue value);
public static TValue GetOrAdd<TKey,TValue> (ref System.Collections.Immutable.ImmutableDictionary<TKey,TValue> location, TKey key, TValue value);
static member GetOrAdd : ImmutableDictionary * 'Key * 'Value -> 'Value
Public Shared Function GetOrAdd(Of TKey, TValue) (ByRef location As ImmutableDictionary(Of TKey, TValue), key As TKey, value As TValue) As TValue

类型参数

TKey

集合中包含的键的类型。

TValue

集合中包含的值的类型。

参数

location
ImmutableDictionary<TKey,TValue>

当指定的键不在字典中时以原子方式更新的变量或字段。

key
TKey

要获取或添加的值的键。

value
TValue

未找到键时要添加到字典中的值。

返回

TValue

位于指定键处的值;如果该键不存在,则为 valueFactory

适用于