2012-11-01 3 views
0

Java 실행 파일 (.Jar)의 기본 클래스를 호출하여 프로그램을 시작하는 Windows 컴퓨터에 .bat 파일이 있습니다.Windows 스케줄러 대. Java TaskTimer

이제 30 분마다 실행해야합니다.

몇 가지 방법을 통해 설명했지만 어떤 것이 더 좋은지 결정할 수 없습니다.

Windows 스케줄러를 통한 스케줄링 또는 Java 타이머 사용. 어느 것을 선택해야합니까? 실행중인 프로세스의 인스턴스 하나만 원합니다. 이전 프로세스가 30 분 이내에 완료되지 않으면 기다릴 수 있습니다.

내 용도에 따라 무엇을해야할지 알려주세요. 사전에

감사합니다.

+0

Java의 * TimerTask *를 언급하고 있습니까? – onon15

+0

예, Java TimerTask를 참조하고 있습니다 ... – user1570824

답변

0

Windows 스케줄러를 사용하는 것이 좋습니다. 프로세스가 너무 오래 걸릴 위험이있는 경우 프로세스를 실행하는 동안 파일을 만들거나 소켓을 열 수 있으며 다른 프로세스가 시작하려고 할 때 소켓을 감지하여이를 감지하고 종료 할 수 있습니다. 이는 30m 창을 "놓치게"만들 것입니다 (즉, 첫 번째 작업이 12시에 시작하여 12:35에 완료되면 다음 작업은 1 시까 지 시작되지 않음).

그러나이 방법을 사용하면 장시간 실행되는 프로세스 설정, Java 서비스 시작 및 중지 등에 대해 걱정할 필요가 없습니다. Windows 스케줄러는 모든 것을 이와 같이 쉽게 만듭니다.

+0

이전에 시도했으나 다음을 수행 할 수 없습니다. 1) 30 분마다 발생하도록 프로세스 스케줄링 2) 시스템 재부팅 처리. 사용자가 아무것도하지 않고, 스케줄러는 매 30 분을 시작해야합니다 – user1570824

0

TimerTask은 예약 시스템이 아니며 인앱 예약을위한 도구를 제공하는 라이브러리입니다. 귀하의 경우에는 시스템이 필요합니다 : 귀하의 앱이 실행 중인지,보고가 필요한지 등등이 필요합니다. Windows Scheduler (또는 cron on unix/linux)가 귀하의 필요에 더 적합합니다 .

+0

하지만 Windows 스케줄러에서 매 30 분마다 일정을 수립 할 수있는 옵션을 찾을 수 없습니다. 내가 어디에서 할 수 있니? 또한 Windows 스케줄러에 갈 때와 인앱 스케줄링을 사용할 때를 이해해야합니다. – user1570824

+0

TimerTask와 스케쥴링 시스템을 비교하는 것은 사과를 과일점과 비교하는 것과 같습니다 .- TimerTask (그리고 그 동생, ScheduledExecutorService)는 프로그래머가 일정이 필요할 경우 프로그램에서 사용할 수있는 기능입니다. 특정 작업을 예약하는 시스템을 설정해야하는 경우,이를 수행하는 시스템이 필요합니다. 또한 스케줄링, 작업 관리, 데이터 지속성, 고 가용성,보고 등을 제공합니다. 물론, 다음과 같이 작성할 수 있습니다. 그런 시스템을 처음부터 사용하고 TimerTask를 사용합니다. 그러나 그것은 당신의 필요를 과잉으로 만듭니다. – onon15

+0

Windows에서 작업을 예약하는 방법은이 사이트에서 완전히 오프 토픽입니다. 이 자습서는 인터넷 ([here 's one] (http://www.satsignal.eu/software/scheduled-tasks.html))에서 찾을 수 있습니다. – onon15