choice 类
choice 消息块是多源且单个目标的块,表示与一组源进行的控制流交互。 选择块将等待多个源的任何一个来生成消息,并将传播生成该消息的源的索引。
template<
class _Type
>
class choice: public ISource<size_t>;
参数
- _Type
表示输入源负载的基于 tuple 的类型。
成员
公共 Typedefs
名称 |
说明 |
---|---|
type |
_Type 的类型别名。 |
公共构造函数
名称 |
说明 |
---|---|
已重载。 构造 choice 消息块。 |
|
销毁 choice 消息块。 |
公共方法
名称 |
说明 |
---|---|
接受由此 choice 块提供的消息,将所有权转移给调用方。 |
|
获取此 choice 消息块上的引用计数,以防止删除。 |
|
使用先前由 choice 消息块提供并由目标成功保留的消息,将所有权转移给调用方。 |
|
检查该 choice 消息该块是否已经使用一个值初始化。 |
|
返回到 tuple 的索引,表示 choice 消息块所选的元素。 |
|
将目标块链接到此 choice 消息块。 |
|
释放以前成功的消息保留。 |
|
释放此 choice 消息块上的引用数。 |
|
保留此 choice 消息块之前提供的消息。 |
|
从此 choice 消息块取消目标块的链接。 |
|
从此 choice 消息块断开所有目标的链接。 (重写 ISource::unlink_targets。) |
|
获取其索引已由 choice 消息块选中的消息。 |
备注
选择块确保仅使用一个传入的消息。
有关更多信息,请参见 异步消息块。
继承层次结构
choice
要求
**标头:**agents.h
命名空间: 并发