Назад к вопросам
Junior — Middle
55
В каких случаях используется интерфейс Callable в программировании?
Ответ от нейросети
sobes.tech AI
Интерфейс Callable в Java используется, когда нужно выполнить задачу, которая возвращает результат и может выбросить проверяемое исключение. В отличие от Runnable, который не возвращает значения и не может выбрасывать проверяемые исключения, Callable позволяет:
- Запустить задачу в отдельном потоке и получить результат через
Future. - Обрабатывать исключения, которые могут возникнуть во время выполнения.
Пример использования Callable с ExecutorService:
import java.util.concurrent.*;
Callable<Integer> task = () -> {
// Некоторая вычислительная задача
return 42;
};
ExecutorService executor = Executors.newSingleThreadExecutor();
Future<Integer> future = executor.submit(task);
try {
Integer result = future.get();
System.out.println("Результат: " + result);
} catch (InterruptedException | ExecutionException e) {
e.printStackTrace();
}
executor.shutdown();
Таким образом, Callable подходит для асинхронных задач, где важен результат и обработка ошибок.