Каково использование Пула потоков в Java?

Каково использование Пула потоков? Существует ли хороший пример реального мира?

36
задан Jonas 19 January 2012 в 19:04
поделиться

4 ответа

Пул потоков - это первоначально созданная группа потоков, которая ожидает задания и выполняет их. Идея состоит в том, чтобы потоки существовали всегда, чтобы нам не приходилось каждый раз тратить время на их создание. Они подходят, когда мы знаем, что есть поток заданий, которые нужно обработать, даже если может быть какое-то время, когда рабочих мест нет.

Вот красивая диаграмма из Википедии : alt text

47
ответ дан 27 November 2019 в 05:43
поделиться

Пулы потоков из учебных пособий по Java содержат хороший обзор:

Использование рабочих потоков минимизирует накладные расходы из-за создания потоков. Объекты потоков используют значительный объем памяти, и в крупномасштабном приложении выделение и освобождение множества объектов потоков создает значительные накладные расходы на управление памятью.

7
ответ дан 27 November 2019 в 05:43
поделиться

Вы можете считать потоки фактическими рабочими, а пулы потоков - группой рабочих. Вы можете создать несколько групп по разным причинам, таким как приоритет, цель и т. Д. Таким образом, хотя один пул может использоваться для задач общего назначения, таких как фоновые расписания, рассылка электронной почты и т. Д., Может существовать пул обработки транзакций для одновременной обработки нескольких транзакций. В случае службы «Исполнитель», я уверен, вы не хотели бы откладывать выполнение транзакционных заданий после того, как не будут завершены другие некритические действия, такие как рассылка электронных писем с подтверждением или действия по обслуживанию базы данных. Вы можете разделить их на пулы и поддерживать их независимо. Это очень упрощенный ответ, не вдаваясь в технический жаргон. С уважением, KT

4
ответ дан 27 November 2019 в 05:43
поделиться

Простой поиск Google приведет к огромному количеству информации о пулах потоков Java и пулах потоков в целом.

Вот несколько полезных ссылок:

5
ответ дан 27 November 2019 в 05:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: