Middle
Zašto su klase Future i CompletableFuture namenjene u Javi?
sobes.tech АИ
Одговор од АИ
Klase Future i CompletableFuture u Javi su namenjene za rad sa rezultatima asinhronih izračuna.
-
Future predstavlja rezultat koji će biti dostupan u budućnosti. Pomoću Future možete proveriti da li je izračun završen, dobiti rezultat (metod get blokira nit ako rezultat još nije spreman) ili otkazati zadatak.
-
CompletableFuture proširuje mogućnosti Future, pružajući zgodan API za sastavljanje asinhronih operacija, obradu rezultata bez blokiranja, lančanje poziva i obradu izuzetaka. Podržava funkcionalne metode kao što su thenApply, thenAccept, thenCompose i druge, što olakšava izgradnju složenih asinhronih scenarija.
Primer korišćenja CompletableFuture:
CompletableFuture.supplyAsync(() -> {
// Duga operacija
return "Rezultat";
}).thenApply(result -> {
// Obrada rezultata
return result.toUpperCase();
}).thenAccept(finalResult -> {
System.out.println(finalResult);
});