You've already forked cpp-httplib
Optimize ThreadPool and MatcherBase constructors (#2283)
Add a missing reserve and missing std::move to each ctor respectively. The latter should really be caught by a clang-tidy perf linter.
This commit is contained in:
@@ -873,6 +873,7 @@ class ThreadPool final : public TaskQueue {
|
||||
public:
|
||||
explicit ThreadPool(size_t n, size_t mqr = 0)
|
||||
: shutdown_(false), max_queued_requests_(mqr) {
|
||||
threads_.reserve(n);
|
||||
while (n) {
|
||||
threads_.emplace_back(worker(*this));
|
||||
n--;
|
||||
@@ -981,7 +982,7 @@ namespace detail {
|
||||
|
||||
class MatcherBase {
|
||||
public:
|
||||
MatcherBase(std::string pattern) : pattern_(pattern) {}
|
||||
MatcherBase(std::string pattern) : pattern_(std::move(pattern)) {}
|
||||
virtual ~MatcherBase() = default;
|
||||
|
||||
const std::string &pattern() const { return pattern_; }
|
||||
|
||||
Reference in New Issue
Block a user