ImmutableInterlocked Třída

Definice

Obsahuje propojené mechanismy Exchange pro neměnné kolekce.Contains interlocked exchange mechanisms for immutable collections.

Balíček NuGet: System. Collections. unmutable (informace o neměnných kolekcích a způsobu jejich instalace)NuGet package: System.Collections.Immutable (about immutable collections and how to install)

public ref class ImmutableInterlocked abstract sealed
public static class ImmutableInterlocked
type ImmutableInterlocked = class
Public Class ImmutableInterlocked
Dědičnost
ImmutableInterlocked

Metody

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

Získá hodnotu ze slovníku po přidání nebo aktualizaci existující položky.Obtains the value from a dictionary after having added it or updated an existing entry.

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

Získá hodnotu ze slovníku po přidání nebo aktualizaci existující položky.Obtains the value from a dictionary after having added it or updated an existing entry.

Enqueue<T>(ImmutableQueue<T>, T)

Atomicky zařazuje prvek na konec fronty.Atomically enqueues an element to the end of a queue.

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

Získá hodnotu pro zadaný klíč ze slovníku, nebo pokud klíč nebyl nalezen, přidá do slovníku novou hodnotu.Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary.

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

Získá hodnotu pro zadaný klíč ze slovníku, nebo pokud klíč nebyl nalezen, přidá do slovníku novou hodnotu.Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary.

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

Získá hodnotu pro zadaný klíč ze slovníku, nebo pokud klíč nebyl nalezen, přidá do slovníku novou hodnotu.Gets the value for the specified key from the dictionary, or if the key was not found, adds a new value to the dictionary.

InterlockedCompareExchange<T>(ImmutableArray<T>, ImmutableArray<T>, ImmutableArray<T>)

Porovná dvě neměnný pole pro rovnost a, pokud jsou stejné, nahradí jedno z polí.Compares two immutable arrays for equality and, if they are equal, replaces one of the arrays.

InterlockedExchange<T>(ImmutableArray<T>, ImmutableArray<T>)

Nastaví pole na zadané pole a vrátí odkaz na původní pole jako atomickou operaci.Sets an array to the specified array and returns a reference to the original array, as an atomic operation.

InterlockedInitialize<T>(ImmutableArray<T>, ImmutableArray<T>)

Nastaví pole na zadané pole, pokud pole nebylo inicializováno.Sets an array to the specified array if the array has not been initialized.

Push<T>(ImmutableStack<T>, T)

Vloží nový prvek do zásobníku.Pushes a new element onto the stack.

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

Přidá zadaný klíč a hodnotu do slovníku, pokud klíč není ve slovníku.Adds the specified key and value to the dictionary if the key is not in the dictionary.

TryDequeue<T>(ImmutableQueue<T>, T)

V případě, že fronta není prázdná, odstraní a vrátí zadaný element v hlavičce fronty.Atomically removes and returns the specified element at the head of the queue, if the queue is not empty.

TryPop<T>(ImmutableStack<T>, T)

Odebere prvek z horní části zásobníku, pokud je k dispozici prvek pro odebrání.Removes an element from the top of the stack, if there is an element to remove.

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

Odebere prvek se zadaným klíčem, pokud klíč existuje.Removes the element with the specified key, if the key exists.

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

Nastaví zadaný klíč na zadanou hodnotu, pokud je zadaný klíč již nastaven na konkrétní hodnotu.Sets the specified key to the specified value if the specified key already is set to a specific value.

Update<T,TArg>(ImmutableArray<T>, Func<ImmutableArray<T>,TArg,ImmutableArray<T>>, TArg)

Je obdobně proměnlivé neměnné pole s sémantikou optimistického uzamykání transakcí prostřednictvím zadané transformační funkce.Mutates an immutable array in-place with optimistic locking transaction semantics via a specified transformation function. Transformace se opakuje tolikrát, kolikrát to bude nutné, aby se vyhrála Optimistická doba uzamčení.The transformation is retried as many times as necessary to win the optimistic locking race.

Update<T,TArg>(T, Func<T,TArg,T>, TArg)

Obdobně přinese hodnotu k sémantikě optimistického uzamykání transakcí prostřednictvím zadané transformační funkce.Mutates a value in-place with optimistic locking transaction semantics via a specified transformation function. Transformace se opakuje tolikrát, kolikrát to bude nutné, aby se vyhrála Optimistická doba uzamčení.The transformation is retried as many times as necessary to win the optimistic locking race.

Update<T>(ImmutableArray<T>, Func<ImmutableArray<T>,ImmutableArray<T>>)

Je obdobně proměnlivé neměnné pole s sémantikou optimistického uzamykání transakcí prostřednictvím zadané transformační funkce.Mutates an immutable array in-place with optimistic locking transaction semantics via a specified transformation function. Transformace se opakuje tolikrát, kolikrát to bude nutné, aby se vyhrála Optimistická doba uzamčení.The transformation is retried as many times as necessary to win the optimistic locking race.

Update<T>(T, Func<T,T>)

Obdobně přinese hodnotu k sémantikě optimistického uzamykání transakcí prostřednictvím zadané transformační funkce.Mutates a value in-place with optimistic locking transaction semantics via a specified transformation function. Transformace se opakuje tolikrát, kolikrát to bude nutné, aby se vyhrála Optimistická doba uzamčení.The transformation is retried as many times as necessary to win the optimistic locking race.

Platí pro

Bezpečný přístup z více vláken

Tento typ je bezpečný pro přístup z více vláken.This type is thread safe.