|
|
@ -97,7 +97,13 @@ void ServiceThread::Impl::QueueSyncRequest(KSession& session, |
|
|
condition.notify_one(); |
|
|
condition.notify_one(); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
ServiceThread::Impl::~Impl() = default; |
|
|
|
|
|
|
|
|
ServiceThread::Impl::~Impl() { |
|
|
|
|
|
condition.notify_all(); |
|
|
|
|
|
for (auto& thread : threads) { |
|
|
|
|
|
thread.request_stop(); |
|
|
|
|
|
thread.join(); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
ServiceThread::ServiceThread(KernelCore& kernel, std::size_t num_threads, const std::string& name) |
|
|
ServiceThread::ServiceThread(KernelCore& kernel, std::size_t num_threads, const std::string& name) |
|
|
: impl{std::make_unique<Impl>(kernel, num_threads, name)} {} |
|
|
: impl{std::make_unique<Impl>(kernel, num_threads, name)} {} |
|
|
|