Метод ofPlatform
Метод ofPlatform класса Thread возвращает объект
Thread.Builder.OfPlatform, который позволяет создавать
платформенные потоки с настроенными параметрами, такими как имя,
приоритет, демон и группа потоков. Платформенные потоки - это
традиционные потоки, которые напрямую связаны с потоками
операционной системы. Метод не принимает параметров и является
статическим. Настроенные параметры применяются ко всем потокам,
созданным через полученную фабрику.
Синтаксис
Thread.ofPlatform()
Пример
Давайте создадим фабрику платформенных потоков и запустим новый поток, который выведет свое имя:
public class Main
{
public static void main(String[] args)
{
Thread.Builder.OfPlatform builder = Thread.ofPlatform();
Thread thread = builder.name("worker").start(() -> {
System.out.println(Thread.currentThread().getName());
});
}
}
Результат выполнения кода:
"worker"
Пример
Давайте создадим демон-поток через фабрику платформенных потоков и проверим его флаг демона:
public class Main
{
public static void main(String[] args) throws InterruptedException
{
Thread.Builder.OfPlatform builder = Thread.ofPlatform();
Thread thread = builder.daemon(true).name("daemon-worker").unstarted(() -> {
System.out.println(Thread.currentThread().isDaemon());
});
thread.start();
thread.join();
}
}
Результат выполнения кода:
true
Пример
Давайте создадим несколько потоков через одну фабрику и выведем их имена:
public class Main
{
public static void main(String[] args) throws InterruptedException
{
Thread.Builder.OfPlatform builder = Thread.ofPlatform();
Thread first = builder.name("first").start(() -> {
System.out.println(Thread.currentThread().getName());
});
Thread second = builder.name("second").start(() -> {
System.out.println(Thread.currentThread().getName());
});
first.join();
second.join();
}
}
Результат выполнения кода:
"first"
"second"
Смотрите также
-
метод
ofVirtual,
который создает фабрику виртуальных потоков -
метод
startVirtualThread,
который запускает виртуальный поток -
метод
currentThread,
который возвращает текущий поток -
класс
Thread,
который представляет поток выполнения