# The Task Scheduler

This section introduces the oneAPI Threading Building Blocks (oneTBB) task scheduler. The task scheduler is the engine that powers the loop templates. When practical, use the loop templates instead of the task scheduler, because the templates hide the complexity of the scheduler. However, if you have an algorithm that does not naturally map onto one of the high-level templates, use the task scheduler.

- Task-Based Programming
- When Task-Based Programming Is Inappropriate
- How Task Scheduler Works
- Task Scheduler Bypass
- Guiding Task Scheduler Execution
  - Set NUMA Node
  - Set Core Type
  - Limit The Maximum Number of Threads Simultaneously Scheduled To One Core