У меня есть длительный процесс, который прослушивает события и делает интенсивную обработку.
В настоящее время я использую Executors.newFixedThreadPool(x)
для дросселирования числа заданий, которые выполняются одновременно, но в зависимости от времени суток и других факторов, я хотел бы иметь возможность динамически увеличивать или уменьшать количество одновременных потоков.
Если я уменьшу количество параллельных потоков, я хочу, чтобы текущие текущие задания заканчивались красиво.
Есть ли библиотека Java, которая позволяет мне контролировать и динамически увеличивать или уменьшать количество параллельных потоков, запущенных в пуле потоков? (Класс должен реализовать ExecutorService).
Должен ли я сам реализовать его?