26 #include <condition_variable>    64   typedef std::function<void()> 
task_t;
   123   std::pair<bool, task_t> fetch_task_or_stop(
void);
   128   bool should_stop(
void) 
const;
   134   std::list<std::thread> m_workers;
   139   std::atomic<std::size_t> m_max_nb_threads = ATOMIC_VAR_INIT(0);
   144   std::atomic<std::size_t> m_nb_running_threads = ATOMIC_VAR_INIT(0);
   149   std::atomic<bool> m_should_stop = ATOMIC_VAR_INIT(
false);
   154   std::queue<task_t> m_tasks;
   159   std::mutex m_tasks_mtx;
   164   std::condition_variable m_tasks_condvar;
 
thread_pool(std::size_t nb_threads)
thread_pool & operator=(const thread_pool &)=delete
assignment operator 
std::function< void()> task_t
Definition: thread_pool.hpp:64
Definition: io_service.hpp:48
void add_task(const task_t &task)
thread_pool & operator<<(const task_t &task)
void set_nb_threads(std::size_t nb_threads)
Definition: thread_pool.hpp:41
bool is_running(void) const