Подтвердить что ты не робот

Проверка отмены Java-таймера

Почему нет метода isCancelled для объекта java.util.Timer?

Я хотел бы запланировать выполнение задачи, если Таймер не был отменен, и запустите его напрямую (в том же потоке), если он был отменен.

Единственная опция, чтобы поймать IllegalStateException, которая может возникнуть, если Таймер уже отменен? (Чувствует себя неправильно, чтобы поймать IllegalStateException).

4b9b3361

Ответ 1

Насколько вы уверены, что хотите использовать Timer? Вместо этого используйте ExecutorService, у которого есть isShutdown и имеет множество других преимуществ для загрузки. Общая рекомендация по Java 5 заключалась в замене Timer на ExecutorService s.

Существует интерфейс ScheduledExecutorService, специально предназначенный для сервисов плановых исполнителей. Создайте один из методов Executors.new....