Spec-Zone.ru › OpenJDK 21

Интерфейс Thread.Builder

Все известные подинтерфейсы:
Thread.Builder.OfPlatform, Thread.Builder.OfVirtual
Вложенный класс:
Thread
public static sealed interface Thread.Builder permits Thread.Builder.OfPlatform, Thread.Builder.OfVirtual
Построитель объектов Thread и ThreadFactory.

Builder определяет методы для установки Thread свойств, таких как имя потока name. Это включает свойства, которые в противном случае были бы унаследованными. После установки, Thread или ThreadFactory создаются с помощью следующих методов:

  • Метод unstarted создаёт новый незапущенный Thread для выполнения задачи. Метод start Thread должен быть вызван для планирования потока на выполнение.
  • Метод start создаёт новый Thread для выполнения задачи и планирует запуск потока.
  • Метод factory создаёт ThreadFactory.

Thread.Builder не является потокобезопасным. ThreadFactory возвращаемый методом factory() построителя является потокобезопасным.

Если не указано иное, передача null в качестве аргумента методу в этом интерфейсе приводит к возбуждению NullPointerException.

С:
21
См. также:
  • Thread.ofPlatform()
  • Thread.ofVirtual()

Краткое описание вложенных классов

Модификатор и тип Интерфейс Описание
static interface  Thread.Builder.OfPlatform
Построитель для создания платформенного Thread или ThreadFactory, создающего платформенные потоки.
static interface  Thread.Builder.OfVirtual
Построитель для создания виртуального Thread или ThreadFactory, создающего виртуальные потоки.

Краткое описание методов

Модификатор и тип Метод Описание
ThreadFactory factory()
Возвращает ThreadFactory для создания потоков из текущего состояния построителя.
Thread.Builder inheritInheritableThreadLocals(boolean inherit)
Устанавливает, наследует ли поток начальные значения переменных inheritable-thread-local от потока создания.
Thread.Builder name(String name)
Устанавливает имя потока.
Thread.Builder name(String prefix, long start)
Устанавливает имя потока, являющееся конкатенацией префикса строки и строкового представления значения счетчика.
Thread start(Runnable task)
Создаёт новый Thread из текущего состояния построителя и планирует его на выполнение.
Thread.Builder uncaughtExceptionHandler(Thread.UncaughtExceptionHandler ueh)
Устанавливает обработчик необработанных исключений.
Thread unstarted(Runnable task)
Создаёт новый Thread из текущего состояния построителя для выполнения заданной задачи.

Подробное описание методов

name

Thread.Builder name(String name)
Устанавливает имя потока.
Параметры:
name - имя потока
Возвращает:
этот построитель

name

Thread.Builder name(String prefix, long start)
Устанавливает имя потока, являющееся конкатенацией префикса строки и строкового представления значения счетчика. Начальное значение счетчика - start. Оно увеличивается после создания Thread с помощью этого построителя, так что следующий поток будет именоваться новым значением счетчика. ThreadFactory созданный с помощью этого построителя, инициализируется текущим значением счетчика. ThreadFactory увеличивает свою копию счетчика после того, как newThread используется для создания Thread.
Примечание API:
Следующий пример создает построитель, который вызывается дважды для запуска двух потоков, именованных "worker-0" и "worker-1".
  Thread.Builder builder = Thread.ofPlatform().name("worker-", 0);
  Thread t1 = builder.start(task1);   // name "worker-0"
  Thread t2 = builder.start(task2);   // name "worker-1"
Параметры:
prefix - префикс имени потока
start - начальное значение счетчика
Возвращает:
этот построитель
Исключения:
IllegalArgumentException - если start отрицательный

inheritInheritableThreadLocals

Thread.Builder inheritInheritableThreadLocals(boolean inherit)
Устанавливает, наследует ли поток начальные значения переменных inheritable-thread-local от потока создания. По умолчанию - наследует.
Параметры:
inherit - true для наследования, false для отказа от наследования
Возвращает:
этот построитель

uncaughtExceptionHandler

Thread.Builder uncaughtExceptionHandler(Thread.UncaughtExceptionHandler ueh)
Устанавливает обработчик необработанных исключений.
Параметры:
ueh - обработчик необработанных исключений
Возвращает:
этот построитель

unstarted

Thread unstarted(Runnable task)
Создаёт новый Thread из текущего состояния построителя для выполнения заданной задачи. Метод start Thread должен быть вызван для планирования потока на выполнение.
Параметры:
task - объект, который будет выполняться при запуске потока
Возвращает:
новый незапущенный поток
Исключения:
SecurityException - если заблокировано системным менеджером безопасности (См. Взаимодействие с системным менеджером безопасности при создании платформенных потоков)
См. также:
  • Наследование при создании потоков

start

Thread start(Runnable task)
Создаёт новый Thread из текущего состояния построителя и планирует его на выполнение.
Параметры:
task - объект, который будет выполняться при запуске потока
Возвращает:
новый запущенный поток
Исключения:
SecurityException - если заблокировано системным менеджером безопасности (См. Взаимодействие с системным менеджером безопасности при создании платформенных потоков)
См. также:
  • Наследование при создании потоков

factory

ThreadFactory factory()
Возвращает ThreadFactory для создания потоков из текущего состояния построителя. Возвращаемый фабрика потоков безопасна для использования несколькими потоками одновременно.
Возвращает:
фабрика потоков для создания потоков

© 1993, 2023, 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/21/docs/api/java.base/java/lang/Thread.Builder.html

Spec-Zone.ru

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