Какие состояния потоков бывают в JVM?

Thread.State в Java содержит NEW, RUNNABLE, BLOCKED, WAITING, TIMED_WAITING и TERMINATED. Это состояния JVM, а не точная копия состояний потоков операционной системы.

Короткий ответ

Что ответить на собеседовании

Thread.State в Java содержит NEW, RUNNABLE, BLOCKED, WAITING, TIMED_WAITING и TERMINATED. Это состояния JVM, а не точная копия состояний потоков операционной системы.

Подробный разбор

Ответ с пояснениями

Thread.State в Java содержит NEW, RUNNABLE, BLOCKED, WAITING, TIMED_WAITING и TERMINATED. Это состояния JVM, а не точная копия состояний потоков операционной системы.

RUNNABLE включает исполнение и готовность к нему. BLOCKED означает ожидание входа в synchronized-монитор; WAITING — ожидание без срока, TIMED_WAITING — с таймаутом. NEW предшествует start, TERMINATED следует за завершением run. Например, sleep не освобождает монитор, а Object.wait освобождает именно монитор, на котором ожидает.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее