diff --git a/src/bakatools/logging/log.cpp b/src/bakatools/logging/log.cpp index 09b57a2..62b96f8 100644 --- a/src/bakatools/logging/log.cpp +++ b/src/bakatools/logging/log.cpp @@ -9,7 +9,7 @@ namespace Bk { { std::vector log_sinks; log_sinks.emplace_back(std::make_shared()); - log_sinks[0]->set_pattern("%^[%T] %n: %v%$"); + log_sinks[0]->set_pattern("%^[%T] %n(thread %t) %v%$"); if (file_log) { log_sinks.emplace_back(std::make_shared("bakara.log", true)); diff --git a/src/bakatools/thread/task_pool.h b/src/bakatools/thread/task_pool.h index 785e9d4..8ce7c81 100644 --- a/src/bakatools/thread/task_pool.h +++ b/src/bakatools/thread/task_pool.h @@ -19,6 +19,7 @@ namespace Bk threads_.emplace_back([this] { while (true) { std::function task; + { std::unique_lock lock(queue_mutex_); cv_.wait(lock, [this] { @@ -32,6 +33,7 @@ namespace Bk task = std::move(tasks_.front()); tasks_.pop(); } + task(); } }); @@ -65,6 +67,7 @@ namespace Bk { std::unique_lock lock(queue_mutex_); stop_ = true; + cv_.notify_one(); } private: