Sobes.tech
Junior — Middle

Já utilizou a interface Callable para executar tarefas em Java?

sobes.tech IA

Resposta da IA

Sim, a interface Callable em Java é usada para executar tarefas que retornam um resultado e podem lançar exceções. Ao contrário do Runnable, Callable permite obter o resultado da execução através de Future.

Exemplo de uso do Callable:

import java.util.concurrent.*;

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

        Callable<Integer> task = () -> {
            // Alguma tarefa computacional
            Thread.sleep(1000);
            return 123;
        };

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

        System.out.println("Tarefa iniciada");

        Integer result = future.get(); // Aguardamos o resultado
        System.out.println("Resultado: " + result);

        executor.shutdown();
    }
}

Este método é útil para executar tarefas assíncronas com a possibilidade de obter resultados e tratar exceções.