우선 어제 스터디 때 확인했을 때는

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}")
            }
        }
    }

image.png

image.png

intelliJ에 applicationTaskExecutor로 검색해보니깐 이게 나옴!

Executor 등록해놓은 빈 없으면 스프링이 자동으로 applicationTaskExecutor라는 이름으로 해당 빈을 등록하는 것으로 보임

image.png

build 따라가보니깐

실제로 구현체는 ThreadPoolTaskExecutor 확인

image.png