Spec-Zone.ru › OpenJDK 8

Перечисление 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

Состояние потока для потока, заблокированного в ожидании мониторной блокировки. Поток в заблокированном состоянии ожидает мониторной блокировки для входа в синхронизированный блок/метод или повторного входа в синхронизированный блок/метод после вызова 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

Состояние потока для ожидающего потока со заданным временем ожидания. Поток находится в состоянии ожидания с заданным положительным временем ожидания из-за вызова одного из следующих методов:

  • Thread.sleep
  • Object.wait с таймаутом
  • Thread.join с таймаутом
  • LockSupport.parkNanos
  • LockSupport.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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API