summaryrefslogtreecommitdiffstats
path: root/src/common/thread_worker.h
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/common/thread_worker.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/common/thread_worker.h b/src/common/thread_worker.h
index 7a6756eb5..7e2b04a07 100644
--- a/src/common/thread_worker.h
+++ b/src/common/thread_worker.h
@@ -11,18 +11,20 @@
#include <vector>
#include <queue>
+#include "common/unique_function.h"
+
namespace Common {
class ThreadWorker final {
public:
explicit ThreadWorker(std::size_t num_workers, const std::string& name);
~ThreadWorker();
- void QueueWork(std::function<void()>&& work);
+ void QueueWork(UniqueFunction<void> work);
void WaitForRequests();
private:
std::vector<std::thread> threads;
- std::queue<std::function<void()>> requests;
+ std::queue<UniqueFunction<void>> requests;
std::mutex queue_mutex;
std::condition_variable condition;
std::condition_variable wait_condition;