Mire valók a Future és CompletableFuture osztályok Java-ban?
sobes.tech MI
Válasz az MI-től
A Java Future és CompletableFuture osztályok az aszinkron számítások eredményeivel való munkára szolgálnak.
-
A Future egy olyan eredményt képvisel, amely a jövőben elérhető lesz. A Future segítségével ellenőrizheti, hogy a számítás befejeződött-e, lekérheti az eredményt (a get metódus blokkolja a szálat, ha az eredmény még nem áll rendelkezésre), vagy megszakíthatja a feladatot.
-
A CompletableFuture kibővíti a Future képességeit, kényelmes API-t biztosítva az aszinkron műveletek összefűzéséhez, eredmények blokkolás nélküli feldolgozásához, hívási láncokhoz és kivételkezeléshez. Támogatja a thenApply, thenAccept, thenCompose és más funkcionális módszereket, megkönnyítve összetett aszinkron forgatókönyvek építését.
Példa a CompletableFuture használatára:
CompletableFuture.supplyAsync(() -> {
// Hosszú művelet
return "Eredmény";
}).thenApply(result -> {
// Eredmény feldolgozása
return result.toUpperCase();
}).thenAccept(finalResult -> {
System.out.println(finalResult);
});