如何使用TBB task_arena类与enqueue和wait_until_empty
How to use the TBB task_arena class with enqueue and wait_until_empty
我正在寻找如何使用线程构建块 task_arena类与enqueue
和wait_until_empty
的例子。
这是我所遵循的过程。如上面的文档所述,添加以下内容:
#define TBB_PREVIEW_TASK_ARENA 1
#include "tbb/task.h"
#include “tbb/task_arena.h”
然后用tbb::task::allocate_root
创建任务,用tbb::arena::enqueue
排队。
然而,我在竞技场wait_until_empty()
方法上收到这个错误:
错误:' class tbb::interface7::task_arena '没有名为' wait_until_empty '的成员'
我使用的是最新版本4.3,更新3。
请提供一个简单的工作示例
方法wait_until_empty
在最近的更新中从task_arena
类中删除。不幸的是,您所引用的software.intel.com上的文档尚未更新。我建议使用threadingbuildingblocks.org的文档,它是最新的。
文档页中的示例演示了如何组合task_arena
和task_group
来实现与wait_until_empty
类似的功能。
相关文章:
- std::condition_variable::wait()如何评估给定的谓词
- std::atomic和std::condition_variable wait,notify_*方法之间的区别
- std::memory_order for std::atomic:<T>:wait
- std::p romise::set_value() 和 std::future::wait() 是否提供内存围栏?
- 对于等待以 std::future wait() 返回的函数的 CPU 使用率或检查标志在循环中休眠一段时间哪个更好?
- std::future::get()或std::future::wait()是std::thread::join()的替
- 在 while 循环中使用 std::condition_variable::wait 是否正确
- future::wait() 是否与 async() 执行线程的完成同步?
- 为什么'wait with predicate'求解条件变量的'lost wakeup'?
- 线程锁定互斥锁的速度比 std::conditional_variable::wait() 快
- deadline_timer::wait 是否让位于其他任务
- std::future::wait 是内存障碍吗?(我无法解释这种数据竞赛)
- 如何退出 QThread::wait()
- 当Qtest :: Qwait(..)成功时,Qsignalspy :: Wait(..)失败
- 如何在Wait()C++期间同时调用另一个函数
- 条件变量的"wait"函数在提供谓词时导致意外行为
- 在 UWP 应用程序中,future.wait() 在尝试同步来自异步方法的响应时继续等待
- 条件变量wait引发异常
- 为什么 future::wait() 块
- 为什么信号灯的条件/互斥体实现需要"wait()"函数中的"while"循环?