From 6e6c44d48204e54ba94db5632e312a4a273a8d73 Mon Sep 17 00:00:00 2001 From: Sheldon Aristide Date: Sun, 22 Mar 2026 01:02:45 -0400 Subject: [PATCH] Fix ThreadPool stop flag data race in destructor --- mlx/data/core/ThreadPool.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mlx/data/core/ThreadPool.cpp b/mlx/data/core/ThreadPool.cpp index 6d2c986..f70ac1a 100644 --- a/mlx/data/core/ThreadPool.cpp +++ b/mlx/data/core/ThreadPool.cpp @@ -51,7 +51,10 @@ ThreadPool::ThreadPool(size_t thread_count) { } ThreadPool::~ThreadPool() { - stop_threads_ = true; + { + std::lock_guard lock(task_mutex_); + stop_threads_ = true; + } task_cv_.notify_all(); for (std::thread& thread : threads_) {