16#ifndef __ABG_WORKERS_H__
17#define __ABG_WORKERS_H__
51typedef shared_ptr<task> task_sptr;
76 std::unique_ptr<priv> p_;
81 queue(
unsigned number_of_workers);
82 queue(
unsigned number_of_workers,
This represents a queue of tasks to be performed.
tasks_type & get_completed_tasks() const
Getter of the vector of tasks that got performed.
~queue()
Destructor for the queue type.
void wait_for_workers_to_complete()
Suspends the current thread until all worker threads finish performing the tasks they are executing.
std::vector< task_sptr > tasks_type
A convenience typedef for a vector of task_sptr.
size_t get_size() const
Getter of the size of the queue. This gives the number of task still present in the queue.
bool schedule_tasks(const tasks_type &)
Submit a vector of tasks to the queue of tasks to be performed.
queue()
Default constructor of the queue type.
bool schedule_task(const task_sptr &)
Submit a task to the queue of tasks to be performed.
This represents a task to be performed.
size_t get_number_of_threads()
Toplevel namespace for libabigail.
This functor is to notify listeners that a given task scheduled for execution has been fully executed...
virtual void operator()(const task_sptr &task_done)
The default function invocation operator of the queue type.