Condividi tramite


Tipi di insieme Queue

Le classi System.Collections.Queue, System.Collections.Generic.Queue<T> e System.Collections.Concurrent.ConcurrentQueue<T> sono classi di insiemi LIFO (Last-In-First-Out) che implementano l'interfaccia ICollection e l'interfaccia generica ICollection<T>.

Gli oggetti Stack e Queue sono utili se è necessario un archivio temporaneo per le informazioni, ad esempio quando si desidera eliminare un elemento dopo averne recuperato il valore. Utilizzare Queue se è necessario accedere alle informazioni nello stesso ordine con cui sono archiviate nell'insieme. Utilizzare Stack se è necessario accedere alle informazioni nell'ordine inverso. Utilizzare ConcurrentQueue<T> o ConcurrentStack<T> quando è necessario accedere contemporaneamente all'insieme da più thread.

Su un oggetto Queue e sui relativi elementi è possibile eseguire tre operazioni principali:

  • Enqueue consente di aggiungere un elemento alla fine dell'oggetto Queue.

  • Dequeue consente di rimuovere l'elemento più obsoleto dall'inizio dell'oggetto Queue. Il metodo TryDequeue restituisce false (False in Visual Basic) se non è stato possibile rimuovere il valore.

  • Peek restituisce l'elemento meno recente che si trova all'inizio dell'oggetto Queue senza tuttavia rimuoverlo da Queue.

Vedere anche

Riferimenti

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>

Concetti

Tipi di insieme comunemente utilizzati

Insiemi thread-safe