diff options
-rw-r--r-- | lldb/source/Utility/TaskPool.cpp | 13 |
1 files changed, 1 insertions, 12 deletions
diff --git a/lldb/source/Utility/TaskPool.cpp b/lldb/source/Utility/TaskPool.cpp index a210c8d6a0a..d33f23cd861 100644 --- a/lldb/source/Utility/TaskPool.cpp +++ b/lldb/source/Utility/TaskPool.cpp @@ -8,7 +8,6 @@ //===----------------------------------------------------------------------===// #include "lldb/Utility/TaskPool.h" -#include "lldb/Host/ThreadLauncher.h" #include <cstdint> // for uint32_t #include <queue> // for queue @@ -24,8 +23,6 @@ public: private: TaskPoolImpl(); - static lldb::thread_result_t WorkerPtr(void *pool); - static void Worker(TaskPoolImpl *pool); std::queue<std::function<void()>> m_tasks; @@ -48,7 +45,6 @@ TaskPoolImpl::TaskPoolImpl() : m_thread_count(0) {} void TaskPoolImpl::AddTask(std::function<void()> &&task_fn) { static const uint32_t max_threads = std::thread::hardware_concurrency(); - const size_t min_stack_size = 8 * 1024 * 1024; std::unique_lock<std::mutex> lock(m_tasks_mutex); m_tasks.emplace(std::move(task_fn)); @@ -58,17 +54,10 @@ void TaskPoolImpl::AddTask(std::function<void()> &&task_fn) { // This prevents the thread // from exiting prematurely and triggering a linux libc bug // (https://sourceware.org/bugzilla/show_bug.cgi?id=19951). - lldb_private::ThreadLauncher::LaunchThread("task-pool.worker", WorkerPtr, - this, nullptr, min_stack_size) - .Release(); + std::thread(Worker, this).detach(); } } -lldb::thread_result_t TaskPoolImpl::WorkerPtr(void *pool) { - Worker((TaskPoolImpl *)pool); - return 0; -} - void TaskPoolImpl::Worker(TaskPoolImpl *pool) { while (true) { std::unique_lock<std::mutex> lock(pool->m_tasks_mutex); |