CompletableFutureが完了しなかった場合はどうなりますか?メモリリークの費用はかかりますか?それともスレッドプールからスレッドを使い果たしたのですか?CompletableFutureが完了しなかった場合はどうなりますか?
未完成の未来を清掃するために何ができるのでしょうか?
私は次のような機能を持っていると言うと、タスクを実行している間にプール内のスレッドがリークしたり消費されたりする可能性がありますか?
public void foo()
{
CompletableFuture.supplyAsync(this::functionNeverComplete, pool)
.whenComplete((r,e) -> logger.info("done {}",r,e));
}
なぜ完了しないのですか? – shmosel
私はあなたの混乱を理解していません。 'CompletableFuture'はどのスレッドとも無関係です。他のオブジェクトと同様に動作します。それは到達不能と判断されたときにGC'edされます。 –
'supplyAsync'のjavadocは何を表していますか? –