2
getPrice
メソッドをproduct
の中でproducts
に並列呼び出ししようとしています。私はこのコードを持っていて、別のスレッドでgetPriceが実行されていることを確認しましたが、並列ではなく順次実行しています。誰も私がここに何が欠けていることを指摘してくれる?CompletablFutureおよびExecutorServiceと並行してメソッドを呼び出す
ありがとうございました。
ExecutorService service = Executors.newFixedThreadPool(THREAD_POOL_SIZE);
Set<Product> decoratedProductSet = products.stream()
.map(product -> CompletableFuture
.supplyAsync(() -> getPrice(product.getId(), date, context), service))
.map(t -> t.exceptionally(throwable -> null))
.map(t -> t.join())
.collect(Collectors.<Product>toSet());
は、おかげでたくさんparallelStream、知りませんでした! –