来自 TBB 节点的异步 input/output 和非统一输出

Async input/output and non-uniform output from TBB nodes

我正处于一个项目的开始阶段,我计划使用英特尔线程构建模块库,尤其是流程图部分。

在这方面我有两个问题:

  1. 是否可能有具有异步 input/output 关系的节点?例如,一个特殊的缓冲区节点将接受一些数据输入,并偶尔提供一些输出(例如计算统计数据)

  2. 是否可以让节点向后续节点发送不同的消息?也就是说不是简单的广播。

托尔,

在这两种情况下,您想要的节点都是 multifunction_node。该节点将像常规 function_node 一样接收输入,并且它有一个输出端口元组,您可以附加到该元组(您可以使该元组具有一个元素。)

节点接收消息,但它采取的操作不一定需要输出消息。

第二点我不确定你问的是向不同节点发送消息,还是向同一个节点发送不同类型的消息。如果是后者,你可以使用 std::variant.