Встречается на собеседованиях • сегодня

Чем воспользовался бы: submit в Executor или start в Thread

ExecutorService.submit() и Thread.start() решают разные задачи.

Thread.start() – низкоуровневый способ запуска потока напрямую. Подходит для простых случаев, но требует ручного управления жизненным циклом потока.

java
Thread thread = new Thread(() -> System.out.println("Running"));
thread.start();

ExecutorService.submit() – часть высокоуровневого API для управления пулами потоков. Позволяет:

  • Контролировать количество потоков (пул)
  • Получать Future для асинхронных результатов
  • Переиспользовать потоки (меньше накладных расходов)
java
ExecutorService executor = Executors.newFixedThreadPool(2);
Future<?> future = executor.submit(() -> System.out.println("Task"));

Выбор:

  • Для единичных задач – Thread.
  • Для многопоточных приложений – ExecutorService (лучшая производительность, управление ресурсами).
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы