우선 어제 스터디 때 확인했을 때는
core = 8, max pool size는 max Integer임을 확인했다.
기존 코드에 추가해서 executor 이름이랑 구현체를 확인해봄
private fun checkTaskExecutor() {
val executors = applicationContext.getBeansOfType(Executor::class.java)
executors.forEach { (name, executor) ->
log.info("Found TaskExecutor: $name, type: ${executor.javaClass.name}")
if (executor is ThreadPoolTaskExecutor) {
log.info("Core pool size: ${executor.corePoolSize}")
log.info("Max pool size: ${executor.maxPoolSize}")
}
}
}
intelliJ에 applicationTaskExecutor로 검색해보니깐 이게 나옴!
Executor 등록해놓은 빈 없으면 스프링이 자동으로 applicationTaskExecutor라는 이름으로 해당 빈을 등록하는 것으로 보임
build 따라가보니깐
실제로 구현체는 ThreadPoolTaskExecutor 확인