ImmutableInterlocked 类

定义

包含不可变集合的联锁交换机制。

NuGet package: 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>)

通过指定的转换函数,使用乐观锁定事务语义就地改变值。 可根据需要多次重试转换,以赢取乐观锁定争用。

适用于

线程安全性

此类型是线程安全的。