Встречается на собеседованиях • сегодня
Какие знаешь состояния потоков
В Java потоки могут находиться в одном из следующих состояний:
- NEW - поток создан, но еще не запущен (
new Thread()). - RUNNABLE - поток готов к выполнению, ожидает выделения CPU (
start()вызван). - BLOCKED - поток заблокирован, ожидает монитор (например, при входе в
synchronizedблок). - WAITING - поток ждет неопределенно долго (
wait(),join()без таймаута). - TIMED_WAITING - поток ждет с таймаутом (
sleep(),wait(timeout),join(timeout)). - TERMINATED - поток завершил выполнение.
Пример:
java
Thread t = new Thread(() -> {
try {
Thread.sleep(1000); // TIMED_WAITING
} catch (InterruptedException e) {
e.printStackTrace();
}
});
System.out.println(t.getState()); // NEW
t.start();
System.out.println(t.getState()); // RUNNABLE или TIMED_WAITING
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы