Перечисление Thread.State
- java.lang.Object
-
- java.lang.Enum<Thread.State>
-
- java.lang.Thread.State
- Все реализованные интерфейсы:
-
Serializable,Comparable<Thread.State>
- Вложенный класс:
- Thread
public static enum Thread.State extends Enum<Thread.State>
Состояние потока. Поток может находиться в одном из следующих состояний:
-
NEW
Поток, который еще не запущен, находится в этом состоянии. -
RUNNABLE
Поток, выполняющийся в виртуальной машине Java, находится в этом состоянии. -
BLOCKED
Поток, заблокированный в ожидании блокировки монитора, находится в этом состоянии. -
WAITING
Поток, ожидающий неопределенно долго другого потока для выполнения определенного действия, находится в этом состоянии. -
TIMED_WAITING
Поток, ожидающий другого потока для выполнения действия в течение заданного времени ожидания, находится в этом состоянии. -
TERMINATED
Поток, который завершен, находится в этом состоянии.
Поток может находиться только в одном состоянии в данный момент. Эти состояния являются состояниями виртуальной машины, которые не отражают состояния потоков операционной системы.
- С:
- 1.5
- См. также:
Thread.getState()
Постоянные значения перечисления
| Постоянное значение перечисления | Описание |
|---|---|
BLOCKED |
Состояние потока для потока, заблокированного в ожидании блокировки монитора. |
NEW |
Состояние потока для потока, который еще не запущен. |
RUNNABLE |
Состояние потока для исполняемого потока. |
TERMINATED |
Состояние потока для завершенного потока. |
TIMED_WAITING |
Состояние потока для ожидающего потока со временем ожидания. |
WAITING |
Состояние потока для ожидающего потока. |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
static Thread.State |
valueOf(String name) |
Возвращает константу перечисления этого типа с указанным именем. |
static Thread.State[] |
values() |
Возвращает массив, содержащий константы этого типа перечисления в порядке их объявления. |
Методы, объявленные в классе java.lang.Enum
clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
Методы, объявленные в классе java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
Постоянные значения перечисления
NEW
public static final Thread.State NEW
Состояние потока для потока, который еще не запущен.
RUNNABLE
public static final Thread.State RUNNABLE
Состояние потока для исполняемого потока. Поток в состоянии runnable выполняется в виртуальной машине Java, но может ожидать других ресурсов от операционной системы, таких как процессор.
BLOCKED
public static final Thread.State BLOCKED
Состояние потока для потока, заблокированного в ожидании блокировки монитора. Поток в состоянии blocked ожидает блокировки монитора, чтобы войти в синхронизированный блок/метод или повторно войти в синхронизированный блок/метод после вызова Object.wait.
WAITING
public static final Thread.State WAITING
Состояние потока для ожидающего потока. Поток находится в состоянии ожидания из-за вызова одного из следующих методов:
Object.waitбез таймаутаThread.joinбез таймаутаLockSupport.park
Поток в состоянии ожидания ждет, пока другой поток выполнит определенное действие. Например, поток, вызвавший Object.wait() для объекта, ждет, пока другой поток вызовет Object.notify() или Object.notifyAll() для этого объекта. Поток, вызвавший Thread.join(), ждет завершения указанного потока.
TIMED_WAITING
public static final Thread.State TIMED_WAITING
Состояние потока для ожидающего потока со временем ожидания. Поток находится в состоянии timed waiting из-за вызова одного из следующих методов со заданным положительным временем ожидания:
Thread.sleep-
Object.waitс таймаутом -
Thread.joinс таймаутом LockSupport.parkNanosLockSupport.parkUntil
TERMINATED
public static final Thread.State TERMINATED
Состояние потока для завершенного потока. Поток завершил выполнение.
Методы
values
public static Thread.State[] values()
Возвращает массив, содержащий константы этого типа перечисления в порядке их объявления. Этот метод можно использовать для итерации по константам следующим образом:
for (Thread.State c : Thread.State.values()) System.out.println(c);
- Возвращает:
- массив, содержащий константы этого типа перечисления в порядке их объявления
valueOf
public static Thread.State valueOf(String name)
Возвращает константу перечисления этого типа с указанным именем. Строка должна точно совпадать с идентификатором, используемым для объявления константы перечисления в этом типе. (Дополнительные пробельные символы не допускаются.)
- Параметры:
-
name- имя константы перечисления, которое нужно вернуть. - Возвращает:
- константу перечисления с указанным именем
- Исключения:
-
IllegalArgumentException- если в этом типе перечисления нет константы с указанным именем -
NullPointerException- если аргумент равен null
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Thread.State.html