[解決済み] CompletableFuture|thenApplyとthenComposeの比較
2022-04-27 09:08:03
質問
との違いがよくわからないのですが。
thenApply(
) と
thenCompose()
.
では、どなたか有効なユースケースを提示していただけませんか?
Javaドキュメントより。
thenApply(Function<? super T,? extends U> fn)
新しい
CompletionStage
このステージが完了したとき の引数として実行される。 を提供する。
thenCompose(Function<? super T,? extends CompletionStage<U>> fn)
新しい
CompletionStage
このステージが完了したとき の引数としてこのステージを実行する。 関数を呼び出します。
の第2引数で、"next "と表示されることがわかりました。
thenCompose
は、CompletionStage を拡張します。
thenApply
にはありません。
どなたか、どのようなケースで
thenApply
であり
thenCompose
?
解決方法は?
thenApply
は、同期マッピング機能がある場合に使用します。
CompletableFuture<Integer> future =
CompletableFuture.supplyAsync(() -> 1)
.thenApply(x -> x+1);
thenCompose
は,非同期マッピング関数(すなわち
CompletableFuture
). そうすると、ネストしたfutureではなく、結果を直接含むfutureを返します。
CompletableFuture<Integer> future =
CompletableFuture.supplyAsync(() -> 1)
.thenCompose(x -> CompletableFuture.supplyAsync(() -> x+1));
関連
-
eclipse アクセス制限です。タイプ 'xxx' は API ではありません(必須ライブラリ '' の制限)。
-
SpringBootApplication を型解決できない。
-
Eclipseで "XXXX "の解決策を(型に)解決することができない
-
javaで非静的な解を静的な参照にすることができない
-
Javaクラスローダーにソースコードから潜り込む
-
Eclipseプロンプトを実行する java仮想マシンを使用しない
-
Eclipse起動エラー:javaは起動したが、終了コード=1を返した(ネット上の様々な落とし穴)
-
mavenプロジェクトのテストエラー java.lang.ClassNotFoundException: org.glassfish.jersey.client.ClientConfig の問題を解決する。
-
Java(1)仕上げの基本概念+eclipseのインストール構成
-
[解決済み] 文字列を繰り返す簡単な方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
エラー java.util.NoSuchElementException
-
スタイルシートとして解釈されるリソースが、MIMEタイプtext/htmlで転送される。
-
java の例外が発生しました java
-
ファインバグタイプ
-
JDKの設定時にjava.dllが見つからない、java SE Runtime Environmentが見つからない問題が発生しました。
-
eclipseにプロジェクトをインポートした後、Editorにmain typeが含まれない問題
-
eclipse の実行時に java 仮想マシンが見つからなかった
-
エラーの解決方法 jarfile XXX.jarにアクセスできません。
-
org.glassfish.jersey.servlet.ServletContainer
-
Google Chromeのエラー「Not allowed to load local resource」の解決策について