队列集合类型

System.Collections.Queue 类、System.Collections.Generic.Queue<T> 类和 System.Collections.Concurrent.ConcurrentQueue<T> 类均为先进先出的集合类,可以实现 ICollection 接口和 ICollection<T> 泛型接口。

当需要临时存储信息时,也就是说,当您可能想要在检索某个元素的值后放弃该元素时,可以使用队列和堆栈。 如果需要按照信息存储在集合中的顺序来访问这些信息,请使用 Queue。 如果需要以相反的顺序访问这些信息,请使用 Stack。 如果需要从多个线程同时访问集合,请使用 ConcurrentQueue<T>ConcurrentStack<T>

可以对 Queue 及其元素执行三种主要操作:

  • Enqueue 将元素添加到 Queue 的末尾。

  • DequeueQueue 的开始处移除最旧的元素。 如果未能移除此值,则 TryDequeue 方法返回 false(在 Visual Basic 中为 False)。

  • Peek 返回位于 Queue 的开始处的最旧的元素,但不将其从 Queue 中移除。

请参见

参考

Queue

System.Collections.Generic.Queue<T>

Stack

System.Collections.Generic.Stack<T>

ICollection

System.Collections.Generic.ICollection<T>

ConcurrentQueue<T>

ConcurrentStack<T>

System.Collections.Concurrent.IProducerConsumerCollection<T>

概念

常用的集合类型

线程安全集合