19 #ifndef MIR_THREAD_BASIC_THREAD_POOL_H_
20 #define MIR_THREAD_BASIC_THREAD_POOL_H_
40 std::future<void>
run(std::function<
void()>
const& task);
43 std::future<void>
run(std::function<
void()>
const& task, TaskId
id);
51 std::future<void>
run(WorkerThread* t, std::function<
void()>
const& task, TaskId
id);
52 WorkerThread *find_thread_by(TaskId
id);
53 WorkerThread *find_idle_thread();
56 int const min_threads;
57 std::vector<std::unique_ptr<WorkerThread>> threads;
All things Mir.
Definition: buffer_stream.h:37
void const * TaskId
Definition: basic_thread_pool.h:42
std::future< void > run(std::function< void()> const &task)
Definition: basic_thread_pool.cpp:182
Definition: basic_thread_pool.h:34
BasicThreadPool(int min_threads)
Definition: basic_thread_pool.cpp:175
void shrink()
Definition: basic_thread_pool.cpp:219