Optimize parameter passing to avoid unnecessary copying
This commit is contained in:
@@ -12,6 +12,7 @@
|
||||
#include <iostream>
|
||||
#include <functional>
|
||||
#include <condition_variable>
|
||||
#include <utility>
|
||||
|
||||
namespace util {
|
||||
|
||||
@@ -106,7 +107,7 @@ public:
|
||||
std::string name,
|
||||
supplier<std::shared_ptr<Worker<T, R>>> workersSupplier,
|
||||
consumer<R&> resultConsumer
|
||||
) : logger(name), resultConsumer(resultConsumer) {
|
||||
) : logger(std::move(name)), resultConsumer(resultConsumer) {
|
||||
const uint num_threads = std::thread::hardware_concurrency();
|
||||
for (uint i = 0; i < num_threads; i++) {
|
||||
threads.emplace_back(&ThreadPool<T,R>::threadLoop, this, i, workersSupplier());
|
||||
|
||||
Reference in New Issue
Block a user