복붙노트

[SPRING] 스프링 타이머 실행을 취소하는 방법

SPRING

스프링 타이머 실행을 취소하는 방법

스프링 타이머 실행을 취소하거나 최소한 조건에 따라 실행 빈도를 변경해야합니다. org.springframework.scheduling.quartz.SimpleTriggerBean과 org.springframework.scheduling.timer.ScheduledTimerTask를 모두 사용하고있었습니다. 그것을하는 방법을 찾을 수 없습니다.

해결법

  1. ==============================

    1.참고 : 이것은 Spring 3.0 이상을위한 것입니다.

    참고 : 이것은 Spring 3.0 이상을위한 것입니다.

  2. ==============================

    2.이것은 가장 좋은 해결책은 아니지만 만약 당신이 다른 것을 생각해 낼 수 없다면, 이벤트가 발생할 때마다 검사 될 부울을 사용할 수 있고 부울이 거짓이면 timertask의 run 메소드는 즉시 종료되어야합니다 .

    이것은 가장 좋은 해결책은 아니지만 만약 당신이 다른 것을 생각해 낼 수 없다면, 이벤트가 발생할 때마다 검사 될 부울을 사용할 수 있고 부울이 거짓이면 timertask의 run 메소드는 즉시 종료되어야합니다 .

  3. ==============================

    3.해결책은 org.springframework.scheduling.timer.TimerFactoryBean에 id를 할당 한 다음 애플리케이션에서이 빈을 검색하여 Timer로 캐스팅하고 해당 객체에서 cancel 메소드를 호출하는 것입니다.

    해결책은 org.springframework.scheduling.timer.TimerFactoryBean에 id를 할당 한 다음 애플리케이션에서이 빈을 검색하여 Timer로 캐스팅하고 해당 객체에서 cancel 메소드를 호출하는 것입니다.

  4. from https://stackoverflow.com/questions/13868323/how-to-cancel-spring-timer-execution by cc-by-sa and MIT license