Senior
45
Cum se creează un thread în Java? Ce metode există pentru crearea și pornirea acestuia?
Companiile au fost întrebate
ИП Ганус Александр Андреевич
Răspuns de la AI
sobes.tech AI
В Java создать поток (поток выполнения) можно несколькими способами:
- Наследование от класса Thread
class MyThread extends Thread {
public void run() {
System.out.println("Поток запущен");
}
}
MyThread t = new MyThread();
t.start(); // запускает поток, вызывает run() в новом потоке
- Реализация интерфейса Runnable
class MyRunnable implements Runnable {
public void run() {
System.out.println("Поток запущен");
}
}
Thread t = new Thread(new MyRunnable());
t.start();
- Использование лямбда-выражения (Java 8+)
Thread t = new Thread(() -> System.out.println("Поток запущен"));
t.start();
- Использование ExecutorService (рекомендуемый способ для управления потоками)
ExecutorService executor = Executors.newFixedThreadPool(2);
executor.submit(() -> System.out.println("Поток через ExecutorService"));
executor.shutdown();
Основные методы для управления потоком:
start()— запускает поток, вызывает методrun()в новом потоке.run()— содержит код, который выполняется в потоке; вызывается автоматически послеstart(), не рекомендуется вызывать напрямую.join()— ожидает завершения потока.sleep(long millis)— приостанавливает выполнение текущего потока на заданное время.
Важно: всегда использовать start() для запуска нового потока, чтобы код выполнялся параллельно, а не в текущем потоке.