Многопоточность · Lesson 3/14
21%
⏱ 10–15 min

Состояния потоков в многопоточности

Поток может находиться в одном из следующих состояний:

  • New - объект класса Thread создан, но еще не запущен. Он еще не является потоком выполнения и естественно не выполняется.
  • Runnable - поток готов к выполнению, но планировщик еще не выбрал его.
  • Running – поток выполняется.
  • Waiting/blocked/sleeping - поток блокирован или поток ждет окончания работы другого потока.
  • Dead - поток завершен. Будет выброшено исключение при попытке вызвать метод start() для dead потока.

Существуют перечисление Thread.State, содержащее значения возможных состояний потока: NEW, RUNNABLE, BLOCKED, WAITING, TIMED_WAITING, TERMINATED.

 Получить текущее значение состояния потока можно вызовом метода getState() класса Thread.

Граф состояния потоков

Граф состояния потоков фото

Java программирование

1. Введение в Java
2. Запуск Java
3. Синтаксис Java
4. Операторы Java
5. Условия и циклы
6. Массивы
7. Алгоритмы
8. ООП
9. static
10. Object
11. Интерфейсы, enum
12. Wrapper классы
13. String
14. Localization& Internationalization
15. Date & Time
16. Generics
17. Lambda
18. Коллекции
19. Stream API
20. Исключения
21. I/O
22. Reflection & JavaDoc
23. Сериализация
24. Maven
25. SQL
26. JDBC
27. Многопоточность
28. Git и GitHub
‹ Previous lesson Next lesson ›