Junior — Middle
Hai utilizzato l'interfaccia Callable per eseguire compiti in Java?
sobes.tech AI
Risposta dell'AI
Sì, l'interfaccia Callable in Java viene utilizzata per eseguire compiti che restituiscono un risultato e possono generare eccezioni. A differenza di Runnable, Callable consente di ottenere il risultato dell'esecuzione tramite Future.
Esempio di utilizzo di Callable:
import java.util.concurrent.*;
public class CallableExample {
public static void main(String[] args) throws Exception {
ExecutorService executor = Executors.newSingleThreadExecutor();
Callable<Integer> task = () -> {
// Un compito computazionale
Thread.sleep(1000);
return 123;
};
Future<Integer> future = executor.submit(task);
System.out.println("Compito avviato");
Integer result = future.get(); // Aspettiamo il risultato
System.out.println("Risultato: " + result);
executor.shutdown();
}
}
Questo approccio è utile per eseguire compiti in modo asincrono con la possibilità di ottenere risultati e gestire eccezioni.