Classe message_processor
A classe message_processor
é a classe base abstrata para processamento de objetos message
. Não há garantia sobre a ordenação das mensagens.
Sintaxe
template<class T>
class message_processor;
Parâmetros
T
O tipo de dados do conteúdo em mensagens manipuladas por esse objeto message_processor
.
Membros
Typedefs públicos
Nome | Descrição |
---|---|
type |
Um alias de tipo para T . |
Métodos públicos
Nome | Descrição |
---|---|
async_send | Quando substituído em uma classe derivada, coloca mensagens no bloco de forma assíncrona. |
sync_send | Quando substituído em uma classe derivada, coloca mensagens no bloco de forma assíncrona. |
wait | Quando substituído em uma classe derivada, aguarda a conclusão de todas as operações assíncronas. |
Métodos protegidos
Nome | Descrição |
---|---|
process_incoming_message | Quando substituído em uma classe derivada, executa o processamento de encaminhamento de mensagens no bloco. Chamado uma vez, sempre que uma nova mensagem é adicionada e a fila é encontrada vazia. |
Hierarquia de herança
message_processor
Requisitos
Cabeçalho: agents.h
Namespace: concurrency
async_send
Quando substituído em uma classe derivada, coloca mensagens no bloco de forma assíncrona.
virtual void async_send(_Inout_opt_ message<T>* _Msg) = 0;
Parâmetros
_Msg
Um objeto message
a ser enviado de forma assíncrona.
Comentários
As implementações de processador devem substituir esse método.
process_incoming_message
Quando substituído em uma classe derivada, executa o processamento de encaminhamento de mensagens no bloco. Chamado uma vez, sempre que uma nova mensagem é adicionada e a fila é encontrada vazia.
virtual void process_incoming_message() = 0;
Comentários
As implementações de blocos de mensagens devem substituir esse método.
sync_send
Quando substituído em uma classe derivada, coloca mensagens no bloco de forma assíncrona.
virtual void sync_send(_Inout_opt_ message<T>* _Msg) = 0;
Parâmetros
_Msg
Um objeto message
a ser enviado de forma assíncrona.
Comentários
As implementações de processador devem substituir esse método.
wait
Quando substituído em uma classe derivada, aguarda a conclusão de todas as operações assíncronas.
virtual void wait() = 0;
Comentários
As implementações de processador devem substituir esse método.
Confira também
Namespace de simultaneidade
Classe ordered_message_processor