Я не могу понять, что использовать для планирования и объединения пулов runnable с различным состоянием (каждый экземпляр Runnable имеет свое состояние).Я мог бы использовать ScheduledExecutorFactoryBean вместе с MethodInvokingRunnable для предоставления аргументов.Но взгляните на ключевой метод ScheduledExecutorFactoryBean, он спроектирован так, что все задачи должны начинаться с самого начала.
protected void registerTasks(ScheduledExecutorTask[] tasks, ScheduledExecutorService executor) {
for (ScheduledExecutorTask task : tasks) {
Runnable runnable = getRunnableToSchedule(task);
if (task.isOneTimeTask()) {
executor.schedule(runnable, task.getDelay(), task.getTimeUnit());
}
else {
if (task.isFixedRate()) {
executor.scheduleAtFixedRate(runnable, task.getDelay(), task.getPeriod(), task.getTimeUnit());
}
else {
executor.scheduleWithFixedDelay(runnable, task.getDelay(), task.getPeriod(), task.getTimeUnit());
}
}
}
}
Я не могу придумать, как настроить этот сценарий с помощью ThreadPoolTaskScheduler.
Пожалуйста, помогите мне здесь.Спасибо
РЕДАКТИРОВАТЬ: сокращенная версия: как настроить планировщик задач, который будет запускать сотни "разных экземпляров потоков (с другим состоянием) с интервалом в 2 секунды.