void BLI_task_pool_push(TaskPool *pool, TaskRunFunction run, void *taskdata, bool free_taskdata, TaskPriority priority) { Task *task = MEM_callocN(sizeof(Task), "Task"); task->run = run; task->taskdata = taskdata; task->free_taskdata = free_taskdata; task->pool = pool; task_scheduler_push(pool->scheduler, task, priority); }
static void task_pool_push( TaskPool *pool, TaskRunFunction run, void *taskdata, bool free_taskdata, TaskFreeFunction freedata, TaskPriority priority, int thread_id) { Task *task = task_alloc(pool, thread_id); task->run = run; task->taskdata = taskdata; task->free_taskdata = free_taskdata; task->freedata = freedata; task->pool = pool; task_scheduler_push(pool->scheduler, task, priority); }