在英特尔 TBB 中,我试图: 1. 创建一组任务 2. 让它们运行 3. 当其中一个完成时,我从中得到一些结果并杀死其他任务。
我怎样才能做到这一点 ?我只能看到 API 等待所有人,而不仅仅是单个......
谢谢。
完成的任务可以将其结果存储在已知位置并使用 取消组task::self().cancel_group_execution()
。然后wait_for_all()
将被解除阻塞,该线程可以从已知位置加载结果。
https://www.threadingbuildingblocks.org/docs/help/tbb_userguide/Cancellation_Without_An_Exception.html展示了如何使用cancel_group_execution()
.
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句