33 int const num_threads = g_num_dispatch_threads.load(std::memory_order_relaxed);
35 std::scoped_lock lk(g_dispatch_lock);
37 if (g_dispatch_pool && num_threads == g_dispatch_pool->size()) {
38 return g_dispatch_pool;
41 g_dispatch_pool = std::make_shared<dispatch_pool>(num_threads);
42 return g_dispatch_pool;