Condividi tramite


Classe concurrent_queue

La classe concurrent_queue è una classe contenitore di sequenze che consente l'accesso di tipo First-in First-out ai relativi elementi.Abilita un set limitato di operazioni indipendenti dalla concorrenza, ad esempio push e try_pop.

template<
   typename _Ty,
   class _Ax
>
class concurrent_queue: public ::Concurrency::details::_Concurrent_queue_base_v4;

Parametri

  • _Ty
    Tipo di dati degli elementi da archiviare nella coda.

  • _Ax
    Tipo rappresentante l'oggetto dell'allocatore memorizzato che include i dettagli sull'allocazione e sulla deallocazione di memoria per tale coda simultanea.Questo argomento è facoltativo e il valore predefinito è allocator<_Ty**>**.

Membri

Ee355358.collapse_all(it-it,VS.110).gifTypedef pubblici

Nome

Descrizione

allocator_type

Tipo che rappresenta la classe dell'allocatore per la coda simultanea.

const_iterator

Un tipo che rappresenta un iteratore const non thread-safe su elementi in una coda simultanea.

const_reference

Un tipo che fornisce un riferimento all'elemento const archiviato in una coda simultanea per la lettura e l'esecuzione di operazioni const.

difference_type

Un tipo che fornisce la distanza con segno tra due elementi in una coda simultanea.

iterator

Un tipo che rappresenta un iteratore non thread-safe sugli elementi in una coda simultanea.

reference

Un tipo che fornisce un riferimento a un elemento archiviato in una coda simultanea.

size_type

Un tipo che conta il numero di elementi in una coda simultanea.

value_type

Un tipo che rappresenta il tipo di dati archiviati nella coda simultanea.

Ee355358.collapse_all(it-it,VS.110).gifCostruttori pubblici

Nome

Descrizione

Costruttore concurrent_queue::concurrent_queue

Di overload.Costruisce una coda simultanea.

Distruttore concurrent_queue::~concurrent_queue

Distrugge la coda simultanea.

Ee355358.collapse_all(it-it,VS.110).gifMetodi pubblici

Nome

Descrizione

Metodo concurrent_queue::clear

Cancella la coda simultanea, distruggendo qualsiasi elemento attualmente in coda.Tale metodo non è sicuro per concorrenza.

Metodo concurrent_queue::empty

Consente di testare se la coda simultanea è vuota al momento che questo metodo viene chiamato.Tale metodo è sicuro per concorrenza.

Metodo concurrent_queue::get_allocator

Consente di restituire una copia dell'allocatore utilizzato per costruire la coda simultanea.Tale metodo è sicuro per concorrenza.

Metodo concurrent_queue::push

Di overload.Inserisce in coda un elemento nella parte finale della coda simultanea.Tale metodo è sicuro per concorrenza.

Metodo concurrent_queue::try_pop

Rimuove un elemento dalla coda se disponibile.Tale metodo è sicuro per concorrenza.

Metodo concurrent_queue::unsafe_begin

Di overload.Consente di restituire un iteratore di tipo iterator o const_iterator all'inizio della coda simultanea.Tale metodo non è sicuro per concorrenza.

Metodo concurrent_queue::unsafe_end

Di overload.Consente di restituire un iteratore di tipo iterator o const_iterator alla fine della coda simultanea.Tale metodo non è sicuro per concorrenza.

Metodo concurrent_queue::unsafe_size

Restituisce il numero di elementi nella coda.Tale metodo non è sicuro per concorrenza.

Note

Per ulteriori informazioni, vedere Contenitori e oggetti paralleli.

Gerarchia di ereditarietà

concurrent_queue

Requisiti

Header: concurrent_queue.h

Concorrenza diSpazio dei nomi:

Vedere anche

Riferimenti

Spazio dei nomi concurrency