Итак, какой смысл создавать пул потоков? Обычно это либо одна, либо обе из двух причин:
A) Ваше приложение может повторно использовать потоки вместо того, чтобы тратить много времени на процессор, уничтожая старые потоки и создавая новые для их замены.
B) Это позволяет вашему приложению контролировать количество потоков, которые оно создает. Вместо того, чтобы создавать какое-то неограниченное количество ресурсоемких потоков при большом наборе задач (например, клиентских запросов), ваше приложение может вместо этого создавать объекты задач в удобной компактной очереди, а затем оно может использовать некоторое разумное число * из потоки для их обработки
Создание потока пулы означает создание и удаление потоков, которыми управляют эти пулы. Итак, если вы создали и уничтожили новый пул потоков для каждого клиентского запроса, вы полностью победили бы обе причины (A) и (B).
* Предпочтительно, определяется количеством процессоров, объемом памяти и т. Д., Которые доступны на хосте.