Sobes.tech
Junior — Middle

Vai esat izmantojis „Callable“ saskarni, lai veiktu uzdevumus Java?

sobes.tech AI

Atbilde no AI

Jā, Java interfeiss Callable tiek izmantots uzdevumu izpildei, kas atgriež rezultātu un var izraisīt izņēmumus. Atšķirībā no Runnable, Callable ļauj iegūt izpildes rezultātu, izmantojot Future.

Callable lietošanas piemērs:

import java.util.concurrent.*;

public class CallableExample {
    public static void main(String[] args) throws Exception {
        ExecutorService executor = Executors.newSingleThreadExecutor();

        Callable<Integer> task = () -> {
            // Kāds skaitļošanas uzdevums
            Thread.sleep(1000);
            return 123;
        };

        Future<Integer> future = executor.submit(task);

        System.out.println("Uzdevums uzsākts");

        Integer result = future.get(); // Gaidām rezultātu
        System.out.println("Rezultāts: " + result);

        executor.shutdown();
    }
}

Šī pieeja ir noderīga asinhronai uzdevumu izpildei ar iespēju iegūt rezultātus un apstrādāt izņēmumus.