@Scheduled 주석과 cron 값을 사용하여 메소드를 실행하려고합니다. 메서드는 실행하지만 cron을 존중하지 않습니다. 내 applicationContext.xml의Spring 3.1 @ 임의로 발사하는 스케치
@Component
public class Test {
private static final Logger LOGGER = LoggerFactory.getLogger(Test.class);
@Scheduled(cron = "*/10 * * * * *")
public void run() {
LOGGER.debug("run()");
}
}
부 :
<task:executor id="myExecutor" pool-size="5"/>
<task:scheduler id="myScheduler" pool-size="10"/>
<task:annotation-driven executor="myExecutor" scheduler="myScheduler"/>
<bean id="run" class="xxx.Test"></bean>
내 XML 봄 - 작업 - 3.1.xsd와 스프링 3.1을 사용하고
여기 내 클래스입니다.
내가 시작할 때, 나는 선 10 초마다 있어야한다, 그리고이 얻을 :12/16 15:51:20,033 [---] [DEBUG] [Test:31] - run()
12/16 15:51:29,996 [---] [DEBUG] [Test:31] - run()
12/16 15:54:09,657 [---] [DEBUG] [Test:31] - run()
12/16 15:54:10,000 [---] [DEBUG] [Test:31] - run()
12/16 15:54:19,978 [---] [DEBUG] [Test:31] - run()
12/16 15:54:34,664 [---] [DEBUG] [Test:31] - run()
12/16 15:55:22,137 [---] [DEBUG] [Test:31] - run()
12/16 15:55:34,656 [---] [DEBUG] [Test:31] - run()
12/16 15:55:39,988 [---] [DEBUG] [Test:31] - run()
12/16 15:55:49,981 [---] [DEBUG] [Test:31] - run()
12/16 15:59:07,278 [---] [DEBUG] [Test:31] - run()
각 실행 사이의 지연이 모든 시간을 변경합니다. FixedRate 또는 FixedDelay로 테스트했지만 동일한 결과를 얻습니다.
그래서 클래스도 올바르게 발견되지만 그 방법도 무작위로 발생합니다.
누구나 이런 종류의 행동을 일으킬 수있는 아이디어가 있습니까?
나는 지금 아무런 성공도없이 몇 시간을 찾고 있습니다. java 파일 대신 xml에 스케쥴 된 부분을 두는 것은 cron 값에 대한 특성 파일로 시도하면서 아무 것도 변경하지 않습니다.
@Scheduled(cron = "*/10 * * * * *")
에 대한 여러분의 cron
표현이하고있는 것처럼 보인다 무엇 그건 등, 30, 20, 10, 즉, "즉 10로 나누어 각 초에이 방법을 실행"말하는
바쁜 작업 스케줄러에 대한 아이디어를 지적 해 주셔서 감사합니다. 나는 내 컴퓨터를 다른 컴퓨터에서 실행하려고 시도했다. (나의 개인적인 것, 처음의 것이었다.) 완벽하게 작동하고있다. 나는 직장에 설치된 모든 보안 프로그램이 내 프로그램이 올바르게 실행되지 못하게한다고 생각한다. 이 문제에 대한 2 일간의 연구 끝에 해결되었습니다! 감사. – user2358235
@user 여러분, 천만입니다. –