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

В чем разница между запуском интерфейса Runnable run и start

Основное отличие в том, что run() просто выполняет код в текущем потоке, а start() создает новый поток и запускает в нем run().

Пример:

java
Runnable task = () -> System.out.println("Running in: " + Thread.currentThread().getName());

// Выполняется в main потоке
task.run(); // Вывод: Running in: main

// Создается новый поток
new Thread(task).start(); // Вывод: Running in: Thread-0

text

Ключевые моменты:
- `run()` - синхронный вызов, не создает новый поток
- `start()` - асинхронный, создает и запускает новый поток
- Для многопоточности всегда используйте `start()`
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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