Sobes.tech
Senior
46

Hoe maak je een thread in Java? Welke methoden zijn er om te maken en te starten?

Bedrijven waar gevraagd werd
ИП Ганус Александр Андреевич

Antwoord van AI

sobes.tech AI

В Java создать поток (поток выполнения) можно несколькими способами:

  1. Наследование от класса Thread
class MyThread extends Thread {
    public void run() {
        System.out.println("Поток запущен");
    }
}

MyThread t = new MyThread();
t.start(); // запускает поток, вызывает run() в новом потоке
  1. Реализация интерфейса Runnable
class MyRunnable implements Runnable {
    public void run() {
        System.out.println("Поток запущен");
    }
}

Thread t = new Thread(new MyRunnable());
t.start();
  1. Использование лямбда-выражения (Java 8+)
Thread t = new Thread(() -> System.out.println("Поток запущен"));
t.start();
  1. Использование ExecutorService (рекомендуемый способ для управления потоками)
ExecutorService executor = Executors.newFixedThreadPool(2);
executor.submit(() -> System.out.println("Поток через ExecutorService"));
executor.shutdown();

Основные методы для управления потоком:

  • start() — запускает поток, вызывает метод run() в новом потоке.
  • run() — содержит код, который выполняется в потоке; вызывается автоматически после start(), не рекомендуется вызывать напрямую.
  • join() — ожидает завершения потока.
  • sleep(long millis) — приостанавливает выполнение текущего потока на заданное время.

Важно: всегда использовать start() для запуска нового потока, чтобы код выполнялся параллельно, а не в текущем потоке.