Встречается на собеседованиях • сегодня
Можешь ли подождать
В Java есть несколько способов реализовать ожидание:
Thread.sleep()- приостанавливает текущий поток на указанное время:
java
try {
Thread.sleep(1000); // ждем 1 секунду
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
}- Ожидание с таймаутом через
Object.wait():
java
synchronized (lock) {
lock.wait(5000); // ждем 5 секунд или нотификацию
}- Использование
ScheduledExecutorServiceдля отложенного выполнения:
java
ScheduledExecutorService executor = Executors.newScheduledThreadPool(1);
executor.schedule(() -> {
// код выполнится через 3 секунды
}, 3, TimeUnit.SECONDS);Важно: Thread.sleep() не освобождает мониторы, в отличие от wait(). Для IO-операций лучше использовать асинхронные подходы (NIO, CompletableFuture).

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