Back to questions
Junior — Middle
61
Использовал ли ты интерфейс Callable для выполнения задач в Java?
Companies where asked
Joy Dev
Answer from AI
sobes.tech AI
Да, интерфейс Callable в Java используется для выполнения задач, которые возвращают результат и могут выбрасывать исключения. В отличие от Runnable, Callable позволяет получить результат выполнения через Future.
Пример использования Callable:
import java.util.concurrent.*;
public class CallableExample {
public static void main(String[] args) throws Exception {
ExecutorService executor = Executors.newSingleThreadExecutor();
Callable<Integer> task = () -> {
// Некоторая вычислительная задача
Thread.sleep(1000);
return 123;
};
Future<Integer> future = executor.submit(task);
System.out.println("Задача запущена");
Integer result = future.get(); // Ожидаем результат
System.out.println("Результат: " + result);
executor.shutdown();
}
}
Такой подход удобен для асинхронного выполнения задач с возможностью получить результат и обработать исключения.