Не работает TaskExecutor в Spring
Есть конфиг
@Configuration
@EnableAsync
public class AppConfig {
@Bean
public TaskExecutor threadPoolTaskExecutor() {
ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
executor.setCorePoolSize(4);
executor.setMaxPoolSize(4);
executor.setThreadNamePrefix("thread");
executor.initialize();
executor.setAwaitTerminationSeconds(Integer.MAX_VALUE);
executor.setWaitForTasksToCompleteOnShutdown(true);
return executor;
}
@Bean
public RestTemplate restTemplate() {
return new RestTemplate();
}
}
есть класс
@Service
public class ThreadExecutorService {
@Autowired
TaskExecutor taskExecutor;
public void generateCameraReport() throws JsonProcessingException {
for (int i = 0; i < 4; i++) {
taskExecutor.execute(() -> {
System.out.println(1);
});
}
}
}
В дебагере исполнение не проваливается внутрь taskExecutor.execute(() -> {
точка останова на печати вообще не срабатывает, все время скачет между пока цикл не пройдет for (int i = 0; i < 4; i++) { taskExecutor.execute(() ->
Подскажите как запустить исполнение, бин TaskExecutor срабатывает мой, в дебагере видны его настройки. Java 17 Spring Boot Starter 3.0.2
Источник: Stack Overflow на русском