ConditionalWeakTable<TKey,TValue>.GetOrAdd Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Överlagringar
| Name | Description |
|---|---|
| GetOrAdd(TKey, Func<TKey,TValue>) |
Söker efter en angiven nyckel i tabellen och returnerar motsvarande värde. Om nyckeln inte finns i tabellen anropar metoden den angivna fabriken för att skapa ett värde som är bundet till den angivna nyckeln. |
| GetOrAdd(TKey, TValue) |
Söker efter en angiven nyckel i tabellen och returnerar motsvarande värde. Om nyckeln inte finns i tabellen lägger metoden till det angivna värdet och binder det till den angivna nyckeln. |
| GetOrAdd<TArg>(TKey, Func<TKey,TArg,TValue>, TArg) |
Söker efter en angiven nyckel i tabellen och returnerar motsvarande värde. Om nyckeln inte finns i tabellen anropar metoden den angivna fabriken för att skapa ett värde som är bundet till den angivna nyckeln. |
GetOrAdd(TKey, Func<TKey,TValue>)
- Källa:
- ConditionalWeakTable.cs
- Källa:
- ConditionalWeakTable.cs
Söker efter en angiven nyckel i tabellen och returnerar motsvarande värde. Om nyckeln inte finns i tabellen anropar metoden den angivna fabriken för att skapa ett värde som är bundet till den angivna nyckeln.
public:
TValue GetOrAdd(TKey key, Func<TKey, TValue> ^ valueFactory);
public TValue GetOrAdd(TKey key, Func<TKey,TValue> valueFactory);
member this.GetOrAdd : 'Key * Func<'Key, 'Value (requires 'Key : null and 'Value : null)> -> 'Value
Public Function GetOrAdd (key As TKey, valueFactory As Func(Of TKey, TValue)) As TValue
Parametrar
- key
- TKey
Nyckeln för det värde som ska hittas. Det kan inte vara null.
- valueFactory
- Func<TKey,TValue>
Återanropet som skapar ett värde för nyckeln, om det inte redan finns något. Det kan inte vara null.
Returer
Värdet som är bundet till TKey i den aktuella ConditionalWeakTable<TKey,TValue> instansen när metoden har slutförts.
Undantag
key eller valueFactory är null.
Kommentarer
Om flera trådar försöker initiera samma nyckel kan tabellen anropas valueFactory flera gånger med samma nyckel. Exakt ett av dessa anrop lyckas och det returnerade värdet för det anropet kommer att vara det som läggs till i tabellen och returneras av alla racinganrop GetOrAdd(TKey, Func<TKey,TValue>) . Den här regeln tillåter att tabellen anropar valueFactory utanför det interna tabelllåset för att förhindra dödlägen.
Gäller för
GetOrAdd(TKey, TValue)
- Källa:
- ConditionalWeakTable.cs
- Källa:
- ConditionalWeakTable.cs
Söker efter en angiven nyckel i tabellen och returnerar motsvarande värde. Om nyckeln inte finns i tabellen lägger metoden till det angivna värdet och binder det till den angivna nyckeln.
public:
TValue GetOrAdd(TKey key, TValue value);
public TValue GetOrAdd(TKey key, TValue value);
member this.GetOrAdd : 'Key * 'Value -> 'Value
Public Function GetOrAdd (key As TKey, value As TValue) As TValue
Parametrar
- key
- TKey
Nyckeln för det värde som ska hittas. Det kan inte vara null.
- value
- TValue
Värdet som ska läggas till och bindas till TKey, om det inte redan finns.
Returer
Värdet som är bundet till TKey i den aktuella ConditionalWeakTable<TKey,TValue> instansen när metoden har slutförts.
Undantag
key är null.
Gäller för
GetOrAdd<TArg>(TKey, Func<TKey,TArg,TValue>, TArg)
- Källa:
- ConditionalWeakTable.cs
- Källa:
- ConditionalWeakTable.cs
Söker efter en angiven nyckel i tabellen och returnerar motsvarande värde. Om nyckeln inte finns i tabellen anropar metoden den angivna fabriken för att skapa ett värde som är bundet till den angivna nyckeln.
public:
generic <typename TArg>
TValue GetOrAdd(TKey key, Func<TKey, TArg, TValue> ^ valueFactory, TArg factoryArgument);
public TValue GetOrAdd<TArg>(TKey key, Func<TKey,TArg,TValue> valueFactory, TArg factoryArgument) where TArg : allows ref struct;
member this.GetOrAdd : 'Key * Func<'Key, 'Arg, 'Value (requires 'Key : null and 'Value : null)> * 'Arg -> 'Value
Public Function GetOrAdd(Of TArg) (key As TKey, valueFactory As Func(Of TKey, TArg, TValue), factoryArgument As TArg) As TValue
Typparametrar
- TArg
Typ av ytterligare argument som ska användas med värdefabriken.
Parametrar
- key
- TKey
Nyckeln för det värde som ska hittas. Det kan inte vara null.
- valueFactory
- Func<TKey,TArg,TValue>
Återanropet som skapar ett värde för nyckeln, om det inte redan finns något. Det kan inte vara null.
- factoryArgument
- TArg
Det ytterligare argumentet som ska anges vid valueFactory anrop.
Returer
Värdet som är bundet till TKey i den aktuella ConditionalWeakTable<TKey,TValue> instansen när metoden har slutförts.
Undantag
key eller valueFactory är null.
Kommentarer
Om flera trådar försöker initiera samma nyckel kan tabellen anropas valueFactory flera gånger med samma nyckel. Exakt ett av dessa anrop lyckas och det returnerade värdet för det anropet kommer att vara det som läggs till i tabellen och returneras av alla racinganrop GetOrAdd<TArg>(TKey, Func<TKey,TArg,TValue>, TArg) . Den här regeln tillåter att tabellen anropar valueFactory utanför det interna tabelllåset för att förhindra dödlägen.