Sobes.tech
Junior — Middle

Kas teil on kogemusi klassiga CompletableFuture asünkroonseks programmeerimiseks Java's?

sobes.tech AI

Vastus AI-lt

Jah, Java-s on CompletableFuture klass mugavaks ja tõhusamaks asünkroonseks programmeerimiseks. See võimaldab käivitada ülesandeid eraldi lõimes ja töödelda nende tulemust pärast nende lõpetamist, toetab kutsesid, erandite käsitlemist ja mitme asünkroonse operatsiooni ühendamist.

Näide CompletableFuture kasutamisest:

import java.util.concurrent.CompletableFuture;

public class Näide {
    public static void main(String[] args) {
        CompletableFuture.supplyAsync(() -> {
            // Pikk operatsioon
            return "Tulemus";
        })
        .thenApply(result -> {
            // Tulemustöötlus
            return result.toUpperCase();
        })
        .thenAccept(finalResult -> {
            System.out.println("Lõplik tulemus: " + finalResult);
        });

        // Selleks, et programm ei lõppe kohe
        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}

See klass on laialdaselt kasutusel mittetõkestavate ja skaleeritavate rakenduste ehitamisel.