Compartilhar via


classe transformador

A transformer bloco de mensagens é um destino único, várias fontes, ordenados propagator_block que pode aceitar mensagens de um tipo e é capaz de armazenar um número acoplado de mensagens de um tipo diferente.

template<
   class _Input,
   class _Output
>
class transformer : public propagator_block<single_link_registry<ITarget<_Output>>, multi_link_registry<ISource<_Input>>>;

Parâmetros

  • _Input
    O tipo de carga de mensagens aceitas por buffer.

  • _Output
    O tipo de carga de mensagens armazenadas e propagadas para fora por buffer.

Membros

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

Nome

Descrição

Construtor de Transformer::Transformer

Sobrecarregado.Constrói um transformer bloco de mensagens.

transformador:: ~ transformador destruidor

Destrói a transformer bloco de mensagens.

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

Nome

Descrição

método de transformer::accept_message

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

método de transformer::consume_message

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

método de transformer::link_target_notification

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

método de transformer::propagate_message

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

método de transformer::propagate_to_any_targets

Executa a função de transformador nas mensagens de entrada.

método de transformer::release_message

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

método de transformer::reserve_message

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

método de transformer::resume_propagation

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

método de transformer::send_message

Síncrona passa uma mensagem de um ISource bloco a esta transformer bloco de mensagens.Ele é chamado pelo send método, quando chamado por um bloco de origem.

Método de Transformer::supports_anonymous_source

Substitui o supports_anonymous_source método para indicar que este bloco pode aceitar mensagens oferecidas a ele por uma fonte que não está vinculada.(Substitui ITarget::supports_anonymous_source.)

Comentários

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

Hierarquia de herança

ISource

ITarget

source_block

propagator_block

transformer

Requisitos

Cabeçalho: agents.h

Namespace: concorrência

Consulte também

Referência

simultaneidade Namespace

chame a classe