Thread
Поток выполнения: позволяет программе делать несколько дел одновременно.
Доступно с: Java 1.0
Синтаксис
public class Thread implements Runnable
public Thread(Runnable task)Параметры
| Параметр | Тип | Описание |
|---|---|---|
| task | Runnable | Код, который выполнится в новом потоке. |
Примеры
Создание, запуск и ожидание потока:
void main() throws InterruptedException {
Thread worker = new Thread(() -> IO.println("Hello from " + Thread.currentThread().getName()));
worker.start();
worker.join();
IO.println("Back in " + Thread.currentThread().getName());
}Результат:
Hello from Thread-0
Back in mainПримечания
Задача передаётся лямбдой Runnable, запуск — только через start(). Платформенные потоки дорогие: тысячи таких потоков расходуют много памяти. В современном коде потоки обычно не создают вручную, а используют ExecutorService или виртуальные потоки (Java 21).
См. также
- Thread.start() — Запускает поток: его код начинает выполняться параллельно с вызывающим.
- Thread.join() — Ждёт, пока поток завершится.
- Thread.ofVirtual() — Создаёт виртуальный поток — лёгкий поток, которых можно запустить миллионы.
- ExecutorService — Сервис, который выполняет задачи в пуле потоков.
В учебнике
- Потоки выполнения — Потоки в Java — класс Thread, запуск через start, ожидание через join, Thread.sleep, имена потоков и непредсказуемый порядок выполнения.