Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
1021 of 1172 menu
◀ ▶

Метод isVirtual

Метод isVirtual класса Thread проверяет, является ли данный поток виртуальным. Метод не принимает параметров и возвращает true, если поток виртуальный, и false, если поток является обычным потоком платформы. Виртуальные потоки были добавлены в Java 21 как часть Project Loom и позволяют создавать миллионы легковесных потоков, управляемых JVM, а не операционной системой.

Синтаксис

thread.isVirtual()

Пример

Давайте создадим виртуальный поток и проверим, является ли он виртуальным:

public class Main { public static void main(String[] args) throws InterruptedException { Thread thread = Thread.ofVirtual().start(() -> { System.out.println("Running in virtual thread"); }); thread.join(); System.out.println(thread.isVirtual()); } }

Результат выполнения кода:

"Running in virtual thread" true

Пример

Давайте создадим обычный поток платформы и проверим, является ли он виртуальным:

public class Main { public static void main(String[] args) throws InterruptedException { Thread thread = Thread.ofPlatform().start(() -> { System.out.println("Running in platform thread"); }); thread.join(); System.out.println(thread.isVirtual()); } }

Результат выполнения кода:

"Running in platform thread" false

Пример

Давайте проверим, является ли текущий поток виртуальным, используя метод currentThread:

public class Main { public static void main(String[] args) { Thread current = Thread.currentThread(); System.out.println(current.isVirtual()); } }

Результат выполнения кода:

false

Основной поток main всегда является потоком платформы, поэтому метод возвращает false.

Смотрите также

  • метод startVirtualThread,
    который создаёт и запускает виртуальный поток
  • метод ofVirtual,
    который создаёт builder для виртуальных потоков
  • метод ofPlatform,
    который создаёт builder для потоков платформы
  • класс VirtualThread,
    который представляет виртуальный поток
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить