我必须处理以下场景:我有5个任务(“A”,“B”,“C”,“D”,“E”),我想将它们并行化,但要考虑它们的依赖性。它们必须按以下顺序执行:
A --> B --\
C ----------> E
D --------/
因此,当所有前面的命令都完成时,将执行“E”,而必须在A之后执行“B”。这是我的问题。是否有任何现成的解决方案(STL,Boost)?还是我必须基于std::thread来实现它?
最佳答案
checkout TBB's Flow Graph或PPL。
TBB链接中的示例大致显示了您已草绘的内容。您已经将问题抽象为任务。无需首先了解线程级别。
关于c++ - C++任务链,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17141983/