3
우리 응용 프로그램은 서버 코드가 클라이언트 프로세스에 포함될 때 클라이언트 서버 모드와 독립 실행 형 모드에서 모두 실행됩니다. 내가 작업을 예약 한 봄 콩 XML의 , 스케줄러 스레드가 데몬 스레드하지 않기 때문에, 응용 프로그램이 종료되지 않은 독립형 모드에서 <task : scheduler> 작업 중지
<task:scheduled-tasks scheduler="myScheduler">
<task:scheduled ref="link-to-server" method="heartbeat" fixed-rate="1000"/>
</task:scheduled-tasks>
있다. 어떻게 그들을 멈추게하거나 이러한 스레드를 데몬으로 만들 수 있습니까?
감사합니다.
스프링 컨텍스트를 종료 할 때 언제나 알 수 있는지 확실하지 않습니다. 이 코드는 많은 테스트에서 사용되며 때로는 사람들이 main 메소드를 작성하고 컨텍스트를 작성하며 객체를 호출합니다. 이제이 코드를 모두 변경하기가 어려울 것입니다. 같은 XML에서 스프링 솔루션을 선호합니다. –
스프링은 JVM 종료 훅을 등록하므로 걱정할 필요가 없습니다. –
나는 그것이 작동하지 않는 것을 본다. JVM은 System.exit()을 넣을 때만 완료됩니다. –