Queue コレクション型

System.Collections.QueueSystem.Collections.Generic.Queue<T>System.Collections.Concurrent.ConcurrentQueue<T> の各クラスは、ICollection インターフェイスと ICollection<T> ジェネリック インターフェイスを実装する先入れ先出しコレクション クラスです。

キューとスタックはどちらも、情報の一時的なストレージが必要な場合、つまり要素の値を取得した後でその要素を破棄するような場合に便利です。 コレクションに格納された順序と同じ順序で情報にアクセスする必要がある場合は、Queue を使用します。 また、逆の順序で情報にアクセスする必要がある場合は、Stack を使用します。 複数スレッドから同時にコレクションにアクセスする必要がある場合は、ConcurrentQueue<T> または ConcurrentStack<T> を使用します。

Queue とその要素に対しては、次の 3 つの主要操作を実行できます。

  • Enqueue は、Queue の末尾に要素を追加します。

  • Dequeue は、Queue の先頭から最も古い要素を削除します。 値を削除できなかった場合、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>

その他の技術情報

一般的に使用されるコレクション型

スレッド セーフなコレクション