Thread pool contains pre-instantiated worker threads which will execute job/task you pass to it. Thread pool minimizes the overhead of creating and destroying the threads.
Example like, web server, which takes and executes thread from thread pool for each request received.