TaskExecutorRepeatTemplate에 있는 throttleLimit 값을 변경하고 싶은데 방법이 없을까요?
현재 throttleLimit 을 set을 하려고 보니깐
@Deprecated(since = "5.0", forRemoval = true)
public void setThrottleLimit(int throttleLimit) {
this.throttleLimit = throttleLimit;
}
5.0버전 이후로는 삭제 되었다고 되어 있네요ㅠㅠ
다른 방법으로 해당 throttleLimit 을 값 설정할 방법이 없을까요?
네
해당 가이드를 참조해보면 태스크 큐의 용량이 제한된 풀링된 TaskExecutor 구현을 사용하라고 되어 있습니다.
그래서 스프링에서 제공하는 ThreadPoolTaskExecutor 를 생성해서 TaskExecutorRepeatTemplate 의 아래 메소드에 설정하시면 됩니다.
public void setTaskExecutor(TaskExecutor taskExecutor) {
Assert.notNull(taskExecutor, "A TaskExecutor is required");
this.taskExecutor = taskExecutor;
}
ThreadPoolTaskExecutor 는 스레드의 풀의 즉 throttleLimit 의 개수를 정할 수 있습니다.
ThreadPoolTaskExecutor 를 생성하는 방법은 구글에 검색하시면 여러 내용이 나오고 있으니 참고해 주시기 바랍니다.
답글
잠온다
2023.06.22넵 감사합니다!
애매했는데, 그게 맞는군요