사용 가능한 경우 Java 5 executor 프레임 워크를 사용 하지 않는 이유를 생각하기가 어렵습니다 . 부름:
ScheduledExecutorService ex = Executors.newSingleThreadScheduledExecutor();
당신을 줄 것이다 ScheduledExecutorService
유사한 기능으로 Timer
(즉, 그것이 단일 스레드 될 것입니다)하지만, 그 접근 약간 더 확장 될 수있다 (후드, 그것은에서와 같이 동시 구조가 아니라 완전한 동기화를 사용하는 Timer
클래스). 를 사용 ScheduledExecutorService
하면 다음과 같은 장점이 있습니다.
- 필요한 경우 사용자 정의 할 수 있습니다 (
newScheduledThreadPoolExecutor()
또는 ScheduledThreadPoolExecutor
클래스 참조 )
- '일회성'실행은 결과를 반환 할 수 있습니다
Timer
내가 고집 할 수 있는 유일한 이유 는 다음과 같습니다.
- 사전 Java 5에서 사용 가능
- J2ME에는 비슷한 클래스가 제공되어 애플리케이션을 쉽게 이식 할 수 있습니다 (그러나이 경우 공통 추상화 계층을 추가하는 것은 그리 어렵지 않습니다)