pool - переводится не только как "бассейн", но и как "общий фонд". Пул в пограммировании - это набор однотипных ресурсов, которые переиспользуются по мере надобности. А при осовбождении - возвращаются в общую кучу. Так экономятся расходы на создание и уничтожение этих ресурсов. Бывают пулы почти чего угодно: потоков, буферов, каких-то объектов.
Например, вместо того, чтобы запускать поток под каждое новое подключение в сервере, у вас есть 20 потоков, которые просто ничего не делают, а когда появляетсся подключение, какой-то из свободных потоков его обрабатывает. Если свободных потоков нет, возвращается ошибка, или соединение ждет в очереди. Когда оно обработано, поток возвращается в пул, вместо уничтожения. Это работает хорошо, потому что создание потоков - сложная и дорогая операция. Гораздо дешевле поток усыпить и засунуть какой-то дискриптор в какую-то структуру данных.