Java - Планирование ежедневной задачи

Изменен на CDN, и теперь он работает.

7
задан user98971 30 April 2009 в 21:27
поделиться

6 ответов

Вы должны взглянуть на Quartz , который является системой планирования заданий на основе Java.

16
ответ дан 6 December 2019 в 07:52
поделиться

Возможно, вы захотите использовать что-то вроде кварцевого механизма , который может выполнять такие задачи, как выполнение пропущенных задач (например, во время сбоя ahem ) и это избавляет от попыток управлять потоками.

Например, если вы используете потоки и переводите их в спящий режим и будите их через 86400 секунд (один день), вы проснетесь и на час позже (день = 82800 секунд) или рано (день = 90000 секунд) при переходе на летнее время. день, так что будьте осторожны с любым решением, которое вы выберете

2
ответ дан 6 December 2019 в 07:52
поделиться

Встроенный способ JDK состоит в том, чтобы сделать то, что предложили другие, и сначала рассчитать:

  • currentTime - wantedTime

Затем вы можете использовать что-то вроде исполнителя расписания для отправки задач, и запустить их с определенной задержкой. Это намного проще, чем варианты, которые есть у вас в таких средах, как Quartz , но не требует внешней зависимости.

Кроме того, вы всегда должны перечислять, какой JDK вы используете, чтобы люди могли предоставить решения для вашей версии JDK.

2
ответ дан 6 December 2019 в 07:52
поделиться

Как заявили другие, Quartz - это выбор, с его помощью вы можете выполнять cron-подобные операции, задания или триггеры, вот ссылка на эту тему: http: // www. ibm.com/developerworks/java/library/j-quartz/index.html

1
ответ дан 6 December 2019 в 07:52
поделиться

Вы можете запустить поток, который рассчитывает разницу до следующих 3 часов дня и спит в течение этого времени. Когда он просыпается, он выполняет метод, пересчитывает и спит. Вы это имели в виду?

1
ответ дан 6 December 2019 в 07:52
поделиться

Jcrontab

Jcrontab - это планировщик, написанный на Java. Цель проекта - предоставить полностью функциональные расписания для проектов Java.

1
ответ дан 6 December 2019 в 07:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: