Какая типичная ошибка при работе с Runnable и Callable и как ее избежать?
Что хотят услышать интервьюеры:
Ошибка: использовать Runnable там, где нужен результат и ошибка.
Ответ:
Как избежать: вернитесь к контракту и назначению темы: Runnable не возвращает результат, Callable возвращает и может бросать checked exception. Проверьте edge cases: null, конкурентный доступ, транзакции, ошибки, объем данных и lifecycle Spring/JVM.
Хороший кандидат: объясняет симптом, причину и безопасное исправление, а не просто вспоминает термин.
Callable<Result> task = () -> service.load();