Sobes.tech
Junior — Middle

Hai esperienza con la classe CompletableFuture per la programmazione asincrona in Java?

sobes.tech AI

Risposta dell'AI

Sì, la classe CompletableFuture in Java viene utilizzata per una programmazione asincrona comoda ed efficiente. Permette di avviare compiti in un thread separato e di elaborare il loro risultato al completamento, supporta catene di chiamate, gestione delle eccezioni e combinazione di più operazioni asincrone.

Esempio di utilizzo di CompletableFuture:

import java.util.concurrent.CompletableFuture;

public class Esempio {
    public static void main(String[] args) {
        CompletableFuture.supplyAsync(() -> {
            // Operazione lunga
            return "Risultato";
        })
        .thenApply(result -> {
            // Elaborazione del risultato
            return result.toUpperCase();
        })
        .thenAccept(finalResult -> {
            System.out.println("Risultato finale: " + finalResult);
        });

        // Per evitare che il programma termini subito
        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}

Questa classe è ampiamente usata per costruire applicazioni non bloccanti e scalabili.