Класс message_processormessage_processor Class

Класс message_processor — это абстрактный базовый класс для обработки объектов message.The message_processor class is the abstract base class for processing of message objects. Упорядочивание сообщений не гарантируется.There is no guarantee on the ordering of the messages.

СинтаксисSyntax

template<class T>
class message_processor;

ПараметрыParameters

TT
Тип данных полезной нагрузки в сообщениях, обрабатываемых этим message_processor объектом.The data type of the payload within messages handled by this message_processor object.

ЭлементыMembers

Общедоступные определения типовPublic Typedefs

ИмяName ОписаниеDescription
type Псевдоним типа для T .A type alias for T.

Открытые методыPublic Methods

nameName ОписаниеDescription
async_sendasync_send При переопределении в производном классе помещает сообщения в блок асинхронно.When overridden in a derived class, places messages into the block asynchronously.
sync_sendsync_send При переопределении в производном классе помещает сообщения в блок синхронно.When overridden in a derived class, places messages into the block synchronously.
ожиданияwait При переопределении в производном классе ожидает завершения всех асинхронных операций.When overridden in a derived class, waits for all asynchronous operations to complete.

Защищенные методыProtected Methods

ИмяName ОписаниеDescription
process_incoming_messageprocess_incoming_message При переопределении в производном классе выполняет прямую обработку сообщений в блок.When overridden in a derived class, performs the forward processing of messages into the block. Вызывается каждый раз при добавлении нового сообщения, если очередь пуста.Called once every time a new message is added and the queue is found to be empty.

Иерархия наследованияInheritance Hierarchy

message_processor

ТребованияRequirements

Заголовок: agents.hHeader: agents.h

Пространство имен: параллелизмNamespace: concurrency

async_sendasync_send

При переопределении в производном классе помещает сообщения в блок асинхронно.When overridden in a derived class, places messages into the block asynchronously.

virtual void async_send(_Inout_opt_ message<T>* _Msg) = 0;

ПараметрыParameters

_Msg_Msg
messageОбъект для асинхронной отправки.A message object to send asynchronously.

КомментарииRemarks

Реализация процессора должна переопределять этот метод.Processor implementations should override this method.

process_incoming_messageprocess_incoming_message

При переопределении в производном классе выполняет прямую обработку сообщений в блок.When overridden in a derived class, performs the forward processing of messages into the block. Вызывается каждый раз при добавлении нового сообщения, если очередь пуста.Called once every time a new message is added and the queue is found to be empty.

virtual void process_incoming_message() = 0;

КомментарииRemarks

Реализации блоков сообщений должны переопределять этот метод.Message block implementations should override this method.

sync_sendsync_send

При переопределении в производном классе помещает сообщения в блок синхронно.When overridden in a derived class, places messages into the block synchronously.

virtual void sync_send(_Inout_opt_ message<T>* _Msg) = 0;

ПараметрыParameters

_Msg_Msg
messageОбъект для синхронной отправки.A message object to send synchronously.

КомментарииRemarks

Реализация процессора должна переопределять этот метод.Processor implementations should override this method.

ожиданияwait

При переопределении в производном классе ожидает завершения всех асинхронных операций.When overridden in a derived class, waits for all asynchronous operations to complete.

virtual void wait() = 0;

КомментарииRemarks

Реализация процессора должна переопределять этот метод.Processor implementations should override this method.

См. также разделSee also

Пространство имен Concurrencyconcurrency Namespace
Класс ordered_message_processorordered_message_processor Class