Share via


ordered_message_processor 类

ordered_message_processor 是允许消息块按接收顺序处理消息的 message_processor

语法

template<class T>
class ordered_message_processor : public message_processor<T>;

参数

T
处理器处理的消息的有效负载类型。

成员

公共 Typedef

名称 描述
type T 的类型别名。

公共构造函数

名称 描述
ordered_message_processor 构造 ordered_message_processor 对象。
~ordered_message_processor 析构函数 销毁 ordered_message_processor 对象。

公共方法

名称 描述
async_send 异步排队消息并启动处理任务(如果尚未完成)。 (重写 message_processor::async_send。)
initialize 使用适当的回叫函数、计划程序和计划组初始化 ordered_message_processor 对象。
initialize_batched_processing 初始化消息的批处理
sync_send 同步排队消息并启动处理任务(如果尚未完成)。 (重写 message_processor::sync_send。)
wait 特定于处理器的自旋等待,用于在消息块的析构函数中确保销毁块之前有时间完成所有异步处理任务。 (重写 message_processor::wait。)

受保护方法

名称 描述
process_incoming_message 异步调用的处理函数。 它会将消息取消排队并开始对其进行处理。 (重写 message_processor::process_incoming_message。)

继承层次结构

message_processor

ordered_message_processor

要求

标头: agents.h

命名空间: 并发

async_send

异步排队消息并启动处理任务(如果尚未完成)。

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

参数

_Msg
指向消息的指针。

initialize

使用适当的回叫函数、计划程序和计划组初始化 ordered_message_processor 对象。

void initialize(
    _Inout_opt_ Scheduler* _PScheduler,
    _Inout_opt_ ScheduleGroup* _PScheduleGroup,
    _Handler_method const& _Handler);

参数

_PScheduler
指向用于计划轻型任务的计划程序的指针。

_PScheduleGroup
指向用于计划轻型任务的计划组的指针。

_Handler
回叫期间调用的处理程序函数。

initialize_batched_processing

初始化消息的批处理

virtual void initialize_batched_processing(
    _Handler_method const& _Processor,
    _Propagator_method const& _Propagator);

参数

_Processor
回叫期间调用的处理器函数。

_Propagator
回叫期间调用的传播程序函数。

ordered_message_processor

构造 ordered_message_processor 对象。

ordered_message_processor();

备注

调用 initialize 函数之前,此 ordered_message_processor 不会计划异步或同步处理程序。

~ordered_message_processor

销毁 ordered_message_processor 对象。

virtual ~ordered_message_processor();

备注

在销毁处理器之前,等待所有未完成的异步操作。

process_incoming_message

异步调用的处理函数。 它会将消息取消排队并开始对其进行处理。

virtual void process_incoming_message();

sync_send

同步排队消息并启动处理任务(如果尚未完成)。

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

参数

_Msg
指向消息的指针。

wait

特定于处理器的自旋等待,用于在消息块的析构函数中确保销毁块之前有时间完成所有异步处理任务。

virtual void wait();

另请参阅

并发命名空间