Sobes.tech
Junior — Middle

Aveți experiență cu clasa CompletableFuture pentru programarea asincronă în Java?

sobes.tech AI

Răspuns de la AI

Da, clasa CompletableFuture din Java este utilizată pentru programarea asincronă convenabilă și eficientă. Permite lansarea sarcinilor într-un fir separat și procesarea rezultatului lor la finalizare, suportă lanțuri de apeluri, gestionarea excepțiilor și combinarea mai multor operații asincrone.

Exemplu de utilizare a CompletableFuture:

import java.util.concurrent.CompletableFuture;

public class Exemplu {
    public static void main(String[] args) {
        CompletableFuture.supplyAsync(() -> {
            // Operație lungă
            return "Rezultat";
        })
        .thenApply(result -> {
            // Procesarea rezultatului
            return result.toUpperCase();
        })
        .thenAccept(finalResult -> {
            System.out.println("Rezultatul final: " + finalResult);
        });

        // Pentru ca programul să nu se încheie imediat
        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}

Această clasă este folosită pe scară largă pentru construirea de aplicații neblocante și scalabile.