CompletableFuture не использует определенный TaskExecutor. Вместо этого используйте commonPoolJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 CompletableFuture не использует определенный TaskExecutor. Вместо этого используйте commonPool

Сообщение Anonymous »

Я пытаюсь выполнить некоторую асинхронную работу с помощью CompletableFuture с помощью специального исполнителя. Однако из журналов я вижу, что он использует общий пул по умолчанию. Что мне здесь не хватает?
@Async("datasetTaskExecutor")
public CompletableFuture getTplDataset(String datasetId) {
return CompletableFuture
.supplyAsync(() -> restTemplate.getForObject(BASE_PATH, DatasetResponse.class, datasetId));
}

...

@Bean
public TaskExecutor datasetTaskExecutor() {
ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
executor.setCorePoolSize(8);
executor.setMaxPoolSize(40);
executor.setThreadNamePrefix("DatasetExecutor-");
executor.initialize();
return executor;
}


Подробнее здесь: https://stackoverflow.com/questions/793 ... ol-instead
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»