我读过TBB flow graph conditional execution并有一个稍有不同的问题。TBB流程图条件执行AND多重输入和输出
是否有可能创建一个具有多个输入和多个输出的节点并通过一个条件变量来控制执行?也许没有丑陋的演员。
我附上了一个简单的例子,我想如何设计图。用TBB流程图运行最困难的方式是什么?
start_node
发送start_msg
到some_node
如果
start_msg
是空的,some_node
发送continue_msg
到end_node
,否则some_node
发送continue_msg
本身和A,如果continue_msg
是data_msg
到end_node
收到
some_node
,检查之前的start_msg如果是空的,如果是,则发送continue_msg
至end_node
,否则发送data_msg
。我处理+--continue_msg--+ | | +-----+ +-----+ | | | | +----data_msg---+ v |/ \ start_node --start_msg--> some_node end_node \ / +--continue_msg--+
一个问题:我不能说有多少好元素的start_msg
内甚至是大小是已知的(比方说start_msg
持有tbb::concurrent_vector<T>
如果some_node
找到损坏。元素,它会被忽略,some_node
被发送continue_msg
本身。