Compartilhar via


Classe target_block

A classe de target_block é uma classe base abstrata que fornece a funcionalidade básica de gerenciamento do link e os erros que verifica o destino bloqueem somente.

template<
   class _SourceLinkRegistry,
   class _MessageProcessorType = ordered_message_processor<typename _SourceLinkRegistry::type::source_type>
>
class target_block : public ITarget<typename _SourceLinkRegistry::type::source_type>;

Parâmetros

  • _SourceLinkRegistry
    O Registro de link para ser usado com a origem vincula.

  • _MessageProcessorType
    O tipo de processador para o processamento de mensagem.

Membros

Typedefs Públicas

Nome

Descrição

source_iterator

O tipo de iterador para source_link_manager para este objeto de target_block .

Construtores Públicos

Nome

Descrição

Construtor target_block::target_block

Constrói um objeto target_block.

Destruidor target_block::~target_block

Destrói o objeto target_block.

Métodos Públicos

Nome

Descrição

Método target_block::propagate

Passa de forma assíncrona uma mensagem de um bloco de origem para este bloco de destino.

Método target_block::send

Passa de forma síncrona uma mensagem de um bloco de origem para este bloco de destino.

Métodos Protegidos

Nome

Descrição

Método target_block::async_send

Envia uma mensagem de forma assíncrona para processamento.

Método target_block::decline_incoming_messages

Indica ao bloco que as novas mensagens devem ser diminuídas.

Método target_block::enable_batched_processing

Habilita processamento em lotes o processamento para este bloco.

Método target_block::initialize_target

Inicializa o objeto base. Especificamente, o objeto de message_processor precisa ser inicializado.

Método target_block::link_source

Vincula um bloco de origem especificado para este objeto de target_block .

Método target_block::process_input_messages

Processa as mensagens recebidas como entradas.

Método target_block::process_message

Quando substituído em uma classe derivada, o processa uma mensagem que foi aceita por esse objeto de target_block .

Método target_block::propagate_message

Quando substituído em uma classe derivada, esse método passa de forma assíncrona uma mensagem de um bloco de ISource a este objeto de target_block . É invocado pelo método de propagate , quando chamado por um bloco de origem.

Método target_block::register_filter

Registra um método de filtro que é invocado em cada mensagem recebida.

Método target_block::remove_sources

Unlinks todas as fontes depois de esperado operações assíncronas pendentes de envio para concluir.

Método target_block::send_message

Quando substituído em uma classe derivada, esse método de forma síncrona transmite uma mensagem de um bloco de ISource a este objeto de target_block . É invocado pelo método de send , quando chamado por um bloco de origem.

Método target_block::sync_send

De forma síncrona enviar uma mensagem para processamento.

Método target_block::unlink_source

Unlinks um bloco de origem especificado deste objeto de target_block .

Método target_block::unlink_sources

Unlinks todos os blocos de origem deste objeto de target_block . (Substitui ITarget::unlink_sources.)

Método target_block::wait_for_async_sends

Espera para que todas as propagações assíncronas serem concluídas.

Hierarquia de Herança

ITarget

target_block

Requisitos

Cabeçalho: agents.h

Namespace: simultaneidade

Consulte também

Referência

Namespace Concurrency

Classe ITarget