c# 集合相关的类

字典

.net中Dictionary本身时不支持线程安全的,如果要想使用支持线程安全的字典,那么我们就要使用ConcurrentDictionary了.

ConcurrentDictionary是Dictionary的线程安全版本,位于System.Collections.Concurrent的命名空间下,该命名空间下除了有ConcurrentDictionary,还有以下Class都是我们常用的那些类库的线程安全版本.

c#中的队列和栈

Queue代表这一个先进先出的对象集合,当你需要对各项进行先进先出访问时,可使用Queue队列。 反之使用Stack 。

不建议将 Queue 类用于新开发。 相反,我们建议使用泛型Queue<T>类。

使用 ConcurrentQueue<T>ConcurrentStack<T> 如果需要同时从多个线程访问集合。

官网文档:

看这个文档就够了。

集合性能提升注意点

.NET 提供了很多集合类型,比如 List<T>, Dictionary<T>, 和 HashSet<T>。所有这些集合都有动态的容量,当你添加更多的项目时,它们的大小会自动扩大。

当集合达到其大小限制时,它将分配一个新的更大的内存缓冲区,这意味着要进行额外的开销去分配容量。

所以你的代码应该像:List<int> list = new List<int>(Size);


更新于:2023.5.30

posted @ 2023-05-25 15:38  AI大胜  阅读(40)  评论(0)    收藏  举报