| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > Время и таймеры |
| Автор: lugaru 16.9.2012, 18:07 |
| Вот почитал но не нашел. Сожно ли как то в джаве реализовать ожидания времени, к примеру, что бы функция срабатывала каждый день в 11.59? или дважды в день в 14,00 и 15,00? |
| Автор: Stolzen 16.9.2012, 18:30 |
| Должен подойти http://docs.oracle.com/javase/1.4.2/docs/api/java/util/Timer.html Для чего-то сложнее можно попробовать http://www.sauronsoftware.it/projects/cron4j/ или спринговый TaskScheduler |
| Автор: COVD 17.9.2012, 13:54 | ||
В Timer есть методы schedule с параметрами long delay, long period. Надо установить period = 24 * 60 * 60 * 1000 (количество миллисек в сутках). delay - время ожидания перед первым срабатыванием. Например, программа стартует в 11:00:00. Тогда delay = 59 * 60 * 1000 (количество миллисек в 59 минутах). Но таймер надо перезапускать два раза в год, если компьютер автоматически меняет системное время, отрабатывая переходы на летнее-зимнее время. |
| Автор: lugaru 17.9.2012, 16:19 |
| Спасибо, идю понял. Система будет перезагружаться раз в неделю. Так что годичная перезагрузка не страшна))) schedule хороша но не совсем под программу, не хочеться ее переписывать, я так понял данныя функция принимает тараметр Object а мне надо всего лиш функцию, а на нее данная функция ругаеться благим матом))) так что пока два варианта, КРОН и СЛИП |
| Автор: COVD 17.9.2012, 16:44 | ||||
Этот обьект - TimerTask, разновидность Runnable.
|
| Автор: lugaru 17.9.2012, 18:16 |
| Спасибо, попробую) |