thread_pool#

namespace thread_pool_util#
class ThreadPool : public task_pool_util::TaskPool#

Public Types

typedef TaskPool::__task __task#

Public Functions

inline void _main()#
inline void join()#
template<class Function, class ...Args>
inline auto push(Function &&newTask, Args&&... args)#
template<class Function, class X, class Y, class ...Args>
inline auto pushDelayed(Function &&newTask, std::chrono::duration<X, Y> duration, Args&&... args)#
inline void pushDelayed(std::pair<__time_point, __task> &&task)#
inline void start(int threads)#
inline void stop()#
inline ThreadPool()#
inline explicit ThreadPool(int threads)#
inline ~ThreadPool() noexcept#

Private Members

bool _continue#
std::condition_variable _cv#
std::mutex _lock#
std::vector<std::thread> _thread#