백엔드/Java

@Async가 먹히지 않는 경우는 3가지

david100gom 2024. 3. 20. 12:58

1) @Autowired가 아닌 new로 했을 경우
2) 같은 Class 내에 있는 Method에서 @Async Method를 호출 하였을 때
   결론 : 다른 클래스에 메소드를 만들고 @Autowired 를 이용하여 호출한다.
3)  public 메소드에만 적용해야한다
4) 설정 추가

<!--scheduler (@Scheduled) & executor (@Async) Definition -->
<task:scheduler id="taskScheduler" pool-size="5"/>
<task:executor id="taskExecutor" pool-size="5" />
<task:annotation-driven executor="taskExecutor" scheduler="taskScheduler" />

http://springboot.tistory.com/38