Thread Pool Pattern
Manage and reuse threads efficiently
Overview
The Thread Pool pattern creates a bunch of threads at once and keeps them running, instead of creating and destroying them over and over. They pick up tasks from a shared queue or are assigned tasks natively.