내가 쿼츠와 시간 제한을 구현하는 가장 좋은 방법을 찾으려고하지만,이 프레임 워크가 이미 그것을 할 클래스 또는 인터페이스가 포함되어 있는지 알고 싶습니다. 작업을 얼마나 오래 수행했는지 알고 싶기 때문에 시간 제한을 구현해야합니다. 작업을 중단하라는 취지를 취하십시오.Quartz로 타임 아웃을 구현하는 방법은 무엇입니까?
6
A
답변
8
자바 플랫폼은 스레드를 멈추게하는 어떤 방법도 제공하지 않기 때문에, Quartz는 스레드에서 실행중인 작업을 중단시킬 방법을 제공하지 않는다.
Quartz는 execute() 메소드에 어떤 코드가 있는지 알지 못하므로 잡을 스스로 처리해야한다.
작업의 시작 부분에 System.currentTimeMillis()를 사용하여 현재 시간을 기록한 다음 작업의 주 루프를 통해 다시 사용하여 현재 시간을 가져 오는 것이 좋습니다. 차이를보고 최대 시간이 지난지 확인하고, 그렇다면 기본 루프를 벗어나서 execute() 메소드를 종료하십시오.
+1
InterruptableJob 인터페이스도 참조하십시오. 그리고 JobListener 인터페이스는 사용자의 필요에 맞는 프레임 워크에 간단한 기능을 추가 할 수있는 도구를 제공합니다. – jhouse
관련 문제
- 1. fcntl.flock - 타임 아웃을 구현하는 방법은 무엇입니까?
- 2. 타임 아웃을 디버깅하는 좋은 방법은 무엇입니까? (C#)
- 3. 리프트에서 아약스 타임 아웃을 피하는 방법은 무엇입니까?
- 4. WCF 듀플렉스 타임 아웃을 처리하는 방법은 무엇입니까?
- 5. HoldGesture의 타임 아웃을 줄이는 방법은 무엇입니까?
- 6. MySQLdb가 타임 아웃을 실행
- 7. 루비 소켓에 타임 아웃을 구현하는 가장 좋은 방법
- 8. symfony, 세션 타임 아웃을 설정하는 방법
- 9. 타임 아웃을 통한 단위 테스트
- 10. 타임 아웃을 사용하여 WP7에서 백그라운드 스레드를 만드는 방법은 무엇입니까?
- 11. Java NIO/선택기를 사용하여 읽기 타임 아웃을 수행하는 방법은 무엇입니까?
- 12. 웹 앱에서 세션 타임 아웃을 처리하는 가장 좋은 방법은 무엇입니까?
- 13. Codeigniter에서 보안 로그인/로그 아웃을 구현하는 방법은 무엇입니까?
- 14. 무엇이 HTTP 503을 발생시키고 타임 아웃을 변경하는가?
- 15. 파이썬에서 함수에 타임 아웃을 추가하는 방법
- 16. JRun 세션 타임 아웃을 어떻게 변경합니까?
- 17. PostgreSQL에서 단독 잠금을위한 타임 아웃을 설정하는 방법
- 18. Facebook Connect 타임 아웃을 처리하는 방법
- 19. Grails Jsecurity plugin : 세션 타임 아웃을 늘리십시오.
- 20. CodeIgniter에서 세션 타임 아웃을 얻으려면 어떻게해야합니까?
- 21. Delphi : 전체적으로 ADO 명령 타임 아웃을 변경하십시오.
- 22. flex 3 : netconnection - 어떻게 타임 아웃을 설정합니까?
- 23. Grails에서 타임 아웃 페이지를 구현하는 방법
- 24. Quartz로 iOS 프레임 별 애니메이션
- 25. URL에서 NSDictionary로 plist를 읽는 표준 방법? 타임 아웃을 제어하는 방법?
- 26. Mac에서 사용자 로그 아웃을 결정하는 방법은 무엇입니까?
- 27. 읽기 함수 호출에서 시간 초과를 구현하는 방법은 무엇입니까?
- 28. 세션 타임 아웃을 닫기 전에 브라우저에서 함수를 호출하는 신뢰할 수있는 방법은 무엇입니까?
- 29. jQuery로 iframe을로드 할 때 오류/타임 아웃을 처리하는 가장 좋은 방법은 무엇입니까?
- 30. select()가 모니터하는 각 소켓마다 다른 타임 아웃을 설정하는 방법은 무엇입니까?
아직 endTime 매개 변수를 사용해 보지 않습니까? http://www.quartz-scheduler.org/docs/tutorial/TutorialLesson05.html – Sean
안녕하세요, 물어봐 줘서 고마워, 왜냐하면 그 매개 변수는 단지 일을 끝내기위한 특정 시간이기 때문에 나는 정말로 사용하지 않는다. 그리고 무한 루프를 피하기 위해 작업을 얼마나 오래 수행했는지 알고 싶습니다. – Jorge
좋습니다. 그러면 스케줄러의 작동 시간을 추적하여 시간 초과를 추적 할 수있는 방법을 찾고 있습니다. 청취자 용 문서를 살펴보십시오. 필자는 이들을 사용하지 않았지만 애플리케이션 실행 상태/시간을 모니터하는 것은 논리적 인 선택처럼 보일 것입니다. – Sean