A thread pool is a set of pre-initialized threads that can be used to execute tasks. The Executor framework in Java provides built-in support for creating and managing thread pools.