У меня есть TimerTask, который предназначен для сбора показателей за определенный интервал. Однако возможно, что период выполнения задачи меньше времени выполнения задачи (иногда, если что-то истекает и задерживается).Параллельное выполнение запланированных задач в Java
Есть ли способ выполнить несколько TimerTasks или Runnables, потоков и т. Д. Одновременно, не дожидаясь завершения предыдущей задачи?
Я знаю, что таймер использует одну нить, а ScheduledThreadPoolExecutor задерживает выполнение независимо от скорости.
Спасибо.
Так вы можете объяснить более конкретное, почему «ScheduledThreadPoolExecutor.scheduleAtFixedRate (..)' не подходит для ваших нужд? – Desert
В соответствии с API и из моих тестов, используя его ... _ «Если какое-либо выполнение этой задачи занимает больше времени, чем ее период, последующие исполнения могут начинаться с опозданием, но не будут выполняться одновременно». _ Из [Java API] (http : //docs.oracle.com/javase/7/docs/api/java/util/concurrent/ScheduledExecutorService.html) – 0G0