Sobes.tech
Senior
48

Чӣ гуна дар Java як ҷараён эҷод кардан мумкин аст? Кадом усулҳо барои эҷод ва оғоз кардан мавҷуданд?

Ширкатҳо дар куҷо пурсиданд
ИП Ганус Александр Андреевич

Ҷавоб аз 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() для запуска нового потока, чтобы код выполнялся параллельно, а не в текущем потоке.