Java- 일상적인 일을 예약합니다
-
03-07-2019 - |
문제
응용 프로그램이 처음 실행되는시기 또는 실행 기간에 관계없이 매일 오후 3시에 메소드를 실행하는 효과적인 방법을 찾고 있습니다.
이것은 OS 개입이없는 응용 프로그램에서 전적으로 수행해야합니다 (예 : Windows 작업 스케줄러).
나는 java.util.timer를 실험 해왔다.
모든 도움이 감사하겠습니다.
감사.
해결책
당신은 살펴 봐야합니다 석영 이는 Java 기반 작업 일정 시스템입니다.
다른 팁
당신은 아마도와 같은 것을 사용하고 싶을 것입니다 석영 엔진 누락 된 작업과 같은 작업을 수행 할 수 있습니다 ( ahem 충돌) 그리고 그것은 스레드를 관리하려고 시도하는 작업을 벗어납니다.
예를 들어 실을 사용하여 잠을 자고 86400 초 (1 일) 나중에 깨어나면 하루가 늦어지고 시간이 늦어 지거나 하루가 일찍 (Day = 90000 초) 하루에 잠기고 시간이 지남에 따라 잠기고 시간이 늦어집니다. 선택한 솔루션에주의하십시오
다음 오후 3시와의 차이를 계산하는 스레드를 시작하고 그 시간 동안 잠을 잘 수 있습니다. 그것이 깨어날 때 그것은 방법을 실행하고 다시 계산하고 잠을 자고 있습니다. 이것이 당신이 의미하는 바입니까?
다른 사람들이 언급 한 바와 같이 쿼츠는 선택입니다. http://www.ibm.com/developerworks/java/library/j-quartz/index.html
Jcrontab은 Java로 작성된 스케줄러입니다. 프로젝트 목표는 Java 프로젝트를위한 완벽한 기능 일정을 제공하는 것입니다.