Встречается на собеседованиях • сегодня
В чем разница между submit в Executor и start в Thread
submit() в ExecutorService и start() в Thread выполняют разные задачи:
start():- Запускает новый поток (
Thread), который выполняется параллельно. - Можно использовать только один раз для одного потока.
javaThread thread = new Thread(() -> System.out.println("Running")); thread.start();- Запускает новый поток (
submit():- Принимает
RunnableилиCallableи отправляет задачу в пул потоков (ExecutorService). - Возвращает
Future, позволяя отслеживать результат выполнения (еслиCallable). - Пул управляет потоками автоматически (переиспользование, очередь задач).
javaExecutorService executor = Executors.newFixedThreadPool(2); Future<?> future = executor.submit(() -> System.out.println("Task executed")); executor.shutdown();- Принимает
Ключевое отличие: start() создает новый поток, а submit() использует существующий пул потоков, что эффективнее для множества задач.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы