ImmutableInterlocked 類別

定義

包含不可變集合之連鎖交換機制。

NuGet 套件System.Collections.Immutable (關於固定集合及其安裝方法)

public ref class ImmutableInterlocked abstract sealed
public static class ImmutableInterlocked
type ImmutableInterlocked = class
Public Class ImmutableInterlocked
繼承
ImmutableInterlocked

方法

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

在新增值或更新現有項目之後,從字典取得該值。

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

在新增值或更新現有項目之後,從字典取得該值。

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

自動將元素加入佇列的結尾。

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)

從該字典取得指定索引鍵的值,或若找不到該索引鍵,則將新值加入字典。

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

比較兩個不可變陣列是否相等;如果相等,則取代其中一陣列。

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

將陣列設為指定的陣列,並傳回原始陣列的參考,做為不可部份完成的作業。

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

如果陣列尚未初始化,則將陣列設為指定的陣列。

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

將新的元素推入堆疊。

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

如果字典中沒有指定的索引鍵,會將指定的索引鍵和值加入字典。

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

自動移除或傳回佇列開頭的指定元素 (如果佇列不是空的)。

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

從堆疊的最上方移除元素 (如果有元素可移除)。

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

將有指定索引鍵的元素移除 (如果索引鍵存在)。

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

如果指定的索引鍵已設定為指定的值,則將指定的索引鍵設定為指定的值。

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

透過指定的轉換函式,使用開放式鎖定交易語意,就地變動不可變的陣列。 為贏得開放式鎖定競爭,轉換沒有重試次數限制。

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

透過指定的轉換函式,以開放式鎖定的交易語意就地改變值。 為贏得開放式鎖定競爭,轉換沒有重試次數限制。

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

透過指定的轉換函式,使用開放式鎖定交易語意,就地變動不可變的陣列。 為贏得開放式鎖定競爭,轉換沒有重試次數限制。

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

透過指定的轉換函式,以開放式鎖定的交易語意就地改變值。 為贏得開放式鎖定競爭,轉換沒有重試次數限制。

適用於

執行緒安全性

此型別具備執行緒安全。