diff --git a/ThreadPool.h b/ThreadPool.h index 4183203..e2b72d5 100644 --- a/ThreadPool.h +++ b/ThreadPool.h @@ -16,7 +16,7 @@ class ThreadPool { ThreadPool(size_t); template auto enqueue(F&& f, Args&&... args) - -> std::future::type>; + -> std::future::type>; ~ThreadPool(); private: // need to keep track of threads so we can join them @@ -61,7 +61,7 @@ inline ThreadPool::ThreadPool(size_t threads) // add new work item to the pool template auto ThreadPool::enqueue(F&& f, Args&&... args) - -> std::future::type> + -> std::future::type> { using return_type = typename std::result_of::type; @@ -77,7 +77,7 @@ auto ThreadPool::enqueue(F&& f, Args&&... args) if(stop) throw std::runtime_error("enqueue on stopped ThreadPool"); - tasks.emplace([task](){ (*task)(); }); + tasks.emplace([task](){ return (*task)(); }); } condition.notify_one(); return res;