C++ executors中senders和receivers的概念介绍

sender:尚未计划执行的工作,必须向其添加一个continuation(接收者),然后“启动”或进入执行队列

Receiver:是一个回调对象,用于接收来自sender对象的结果

调度器:单次发送的工厂

Operation_state:异步操作的状态,是发送端与接收端的连接结果

以下是一些定制点(CPOs):

Set_value:应用于接收对象,由发送方调用,通知接收方工作完成,并带有一些结果值;这是接受者的一部分语义。

Set_done:应用于接收方对象,当发送方的工作被取消时调用它;这是接受者的一部分语义。

Set_error:应用于接收方对象,每当发送方的工作出现错误时就调用它;这是接受者的一部分语义。

Connect:应用于发送方对象并传入接收方对象,调用它来连接两个对象,从而产生与operation_state兼容的对象;作为发送者的一部分语义。

Start:应用于operation_state对象,调用它在逻辑上启动操作(由于连接发送方和接收方);operation_state语义的一部分。

Submit:应用于发送方对象,调用它将其与接收方对象结合,并立即(至少在逻辑上)启动结果操作。

Schedule:应用于调度器对象,调用它来返回一个“单发”发送方(这将调用没有值的接收者);调度程序的一部分语义。

自定义点对象是对函数的泛化。该标准为它们提供了一些免费功能,但允许(有时要求)用户自定义它们的行为。区分同名函数的两种变体的关键在于:一种是框架提供的,另一种是用户需要提供的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值