Compartilhar via


join classe

A join bloco de mensagens é um destino único, várias fontes, ordenados propagator_block que juntos combina as mensagens do tipo _Type de cada uma das suas fontes.

template<
   class _Type,
   join_type _Jtype = non_greedy
>
class join : public propagator_block<single_link_registry<ITarget<std::vector<_Type>>>, multi_link_registry<ISource<_Type>>>;

Parâmetros

  • _Type
    O tipo de carga de mensagens ingressou e propagada pelo bloco.

  • _Jtype
    O tipo de join bloco é greedy ounon_greedy

Membros

Dd470899.collapse_all(pt-br,VS.110).gifConstrutores públicos

Nome

Descrição

Construtor de JOIN::join

Sobrecarregado.Constrói um join bloco de mensagens.

associação:: ~ ingressar destruidor

Destrói a join bloco.

Dd470899.collapse_all(pt-br,VS.110).gifMétodos protegidos

Nome

Descrição

método de join::accept_message

Aceita uma mensagem que foi oferecida por esse join bloco de mensagens, transferindo a propriedade para o chamador.

método de join::consume_message

Consome uma mensagem anteriormente oferecida pelo join bloco de mensagens e reservado pelo destino, transferência de propriedade para o chamador.

método de join::link_target_notification

Um retorno de chamada que notifica que um novo destino foi vinculado a esta join bloco de mensagens.

método de join::propagate_message

Assincronamente passa uma mensagem de um ISource bloco a esta join bloco de mensagens.Ele é chamado pelo propagate método, quando chamado por um bloco de origem.

método de join::propagate_to_any_targets

Constrói uma mensagem de saída que contém uma mensagem de entrada de cada fonte quando todos têm propagada uma mensagem.Envia a mensagem de saída para cada um dos seus destinos.

método de join::release_message

Libera uma reserva mensagem anterior.(Substitui source_block::release_message.)

método de join::reserve_message

Reserva uma mensagem anteriormente oferecida por esse join bloco de mensagens.(Substitui source_block::reserve_message.)

método de join::resume_propagation

Reinicia a propagação depois lançou uma reserva.(Substitui source_block::resume_propagation.)

Comentários

Para mais informações, consulte Blocos assíncronas de mensagem.

Hierarquia de herança

ISource

ITarget

source_block

propagator_block

join

Requisitos

Cabeçalho: agents.h

Namespace: concorrência

Consulte também

Referência

simultaneidade Namespace

Classe de opção

multitype_join classe

enumeração de join_type