34 pending.emplace_back(std::forward<T>(t));
49 auto it = local.begin();
50 while (!
paused.load() && it != local.end())
52 visitor(std::forward<T>(*it));
58 if (it != local.end())
84 size_t& num_pending,
bool& is_active,
bool& is_paused)
Definition sub_task_queue.h:17
bool pop_and_visit(Visitor &&visitor)
Definition sub_task_queue.h:39
void pause()
Definition sub_task_queue.h:70
std::atomic< bool > paused
Definition sub_task_queue.h:22
bool unpause()
Definition sub_task_queue.h:76
std::atomic< bool > active
Definition sub_task_queue.h:21
void get_queue_summary(size_t &num_pending, bool &is_active, bool &is_paused)
Definition sub_task_queue.h:83
std::function< void(T &&)> Visitor
Definition sub_task_queue.h:38
bool push(T &&t)
Definition sub_task_queue.h:30
std::deque< T > pending
Definition sub_task_queue.h:20
std::mutex pending_mutex
Definition sub_task_queue.h:19
Definition basic_task.h:8