Sobes.tech
Назад к вопросам
Junior — Middle
102

Можешь назвать интерфейсы, аналогичные Runnable, используемые для определения исполняемых задач?

Ответ от нейросети

sobes.tech AI

В Java, помимо интерфейса Runnable, который определяет задачу без возвращаемого результата, часто используется интерфейс Callable<V>. Он похож на Runnable, но позволяет возвращать результат и выбрасывать проверяемые исключения.

Пример:

Callable<Integer> task = () -> {
    // выполнение задачи
    return 123;
};

Также для асинхронного программирования и работы с потоками можно использовать интерфейсы из пакета java.util.concurrent, например, FutureTask, который реализует Runnable и позволяет получить результат выполнения задачи.

Итого:

  • Runnable — задача без результата
  • Callable<V> — задача с результатом и возможностью выброса исключений
  • FutureTask<V> — обертка для Callable или Runnable с возможностью получения результата и контроля выполнения