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