16 # include <tbb/blocked_range.h>
17 # include <tbb/task_arena.h>
18 # if TBB_INTERFACE_VERSION_MAJOR >= 10
19 # include <tbb/global_control.h>
20 # define WITH_TBB_GLOBAL_CONTROL
27 #ifdef WITH_TBB_GLOBAL_CONTROL
28 static tbb::global_control *task_scheduler_global_control =
nullptr;
33 #ifdef WITH_TBB_GLOBAL_CONTROL
39 task_scheduler_global_control = MEM_new<tbb::global_control>(
57 #ifdef WITH_TBB_GLOBAL_CONTROL
58 MEM_delete(task_scheduler_global_control);
70 tbb::this_task_arena::isolate([&] { func(userdata); });
int BLI_system_thread_count(void)
int BLI_system_num_threads_override_get(void)
Read Guarded memory(de)allocation.
void BLI_task_scheduler_exit()
void BLI_task_isolate(void(*func)(void *userdata), void *userdata)
static int task_scheduler_num_threads
int BLI_task_scheduler_num_threads()
void BLI_task_scheduler_init()
static int threads_override_num