concurrent_queue classe

O concurrent_queue classe é uma classe de contêiner de seqüência que permite first in, First-out acesso para elementos. Ele permite que um conjunto limitado de operações com segurança de simultaneidade, tais como push e try_pop, para citar alguns exemplos.

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

Parâmetros

  • _Ty
    O tipo de dados dos elementos sejam armazenadas na fila.

  • _Ax
    O tipo que representa o objeto alocador armazenados que encapsula os detalhes sobre a alocação e desalocação de memória para essa fila simultânea. Esse argumento é opcional e o valor padrão é allocator<_Ty**>**.

Membros

Definições de tipo públicas

Nome

Descrição

allocator_type

Um tipo que representa a classe do alocador para a fila simultânea.

const_iterator

Um tipo que representa um não-thread-safe const o iterador sobre elementos em uma fila simultâneas.

const_reference

Um tipo que fornece uma referência a um const elemento armazenadas em uma fila de simultânea para ler e executar const as operações.

difference_type

Um tipo que fornece a distância assinada entre dois elementos em uma fila simultânea.

iterator

Um tipo que representa um iterador de thread safe sobre os elementos em uma fila simultânea.

reference

Um tipo que fornece uma referência a um elemento armazenada em uma fila simultânea.

size_type

Um tipo de conta o número de elementos em uma fila simultânea.

value_type

Um tipo que representa o tipo de dados armazenado em uma fila simultânea.

Construtores públicos

Nome

Descrição

Construtor de concurrent_queue::concurrent_queue

Sobrecarregado. Constrói uma fila simultânea.

concurrent_queue:: ~ concurrent_queue destruidor

Destrói a fila simultânea.

Métodos públicos

Nome

Descrição

Método de concurrent_queue::Clear

Limpa a fila simultânea, a destruição de qualquer elementos de enfileirado atualmente. Esse método não é seguro de simultaneidade.

Método de concurrent_queue::Empty

Testes, se a fila de simultânea está vazia no momento em que este método é chamado. Esse método é uma prova de simultaneidade.

Método de concurrent_queue::get_allocator

Retorna uma cópia do alocador usado para construir a fila simultânea. Esse método é uma prova de simultaneidade.

Método de concurrent_queue::push

Enfileira um item no final da cauda da fila simultânea. Esse método é uma prova de simultaneidade.

Método de concurrent_queue::try_pop

Desenfileira um item da fila, se houver uma disponível. Esse método é uma prova de simultaneidade.

Método de concurrent_queue::unsafe_begin

Sobrecarregado. Retorna um iterador do tipo iterator ou const_iterator para o início da fila simultâneas. Esse método não é seguro de simultaneidade.

Método de concurrent_queue::unsafe_end

Sobrecarregado. Retorna um iterador do tipo iterator ou const_iterator para o final da fila simultâneas. Esse método não é seguro de simultaneidade.

Método de concurrent_queue::unsafe_size

Retorna o número de itens na fila. Esse método não é seguro de simultaneidade.

Comentários

Para obter mais informações, consulte Paralelo recipientes e objetos.

Hierarquia de herança

_Concurrent_queue_base_v4

concurrent_queue

Requisitos

Cabeçalho: concurrent_queue.h

Namespace: Simultaneidade

Consulte também

Referência

Namespace de simultaneidade