Вот мой код ниже:
@Component
public PaymentClass ...
private BigDecimal addAllAmount(List<String> list) {//here is the list
List<ListenableFuture<Response>> responseFutures = new ArrayList<>();
for(String str:list){
responseFutures.add(payment.query(getQueryRequest(str)));//external soa service
}
List<BigDecimal> listOfAmount = new ArrayList<>();
for(ListenableFuture<Response> future : responseFutures){
Response response = (Response)future.get();
listOfAmount.add(response.getAmount());
}
return listOfAmount.stream().reduce(BigDecimal.ZERO, BigDecimal::add);
}
....
}
Метод addAllAmount хочет суммировать сумму платежа, для производительности, которую я использую ListenableFuture, чтобы сделать внешний SOA-сервис под названием payment.query асинхронным. Мой вопрос: я не назначаю другой пул потоков, сколько потоков создаст? То же, что и размер списка?