Назад к вопросам
Junior — Middle
66
Какими основными методами можно реализовать поток исполнения в программировании?
Ответ от нейросети
sobes.tech AI
В Java основные способы создания потока исполнения:
- Наследование от класса Thread — создаётся класс, который расширяет Thread и переопределяет метод
run(). Затем создаётся объект этого класса и вызывается методstart(), который запускает новый поток.
class MyThread extends Thread {
public void run() {
System.out.println("Поток запущен");
}
}
MyThread t = new MyThread();
t.start();
- Реализация интерфейса Runnable — создаётся класс, реализующий Runnable с методом
run(). Затем создаётся объект Thread, которому передаётся экземпляр Runnable, и вызываетсяstart().
class MyRunnable implements Runnable {
public void run() {
System.out.println("Поток запущен");
}
}
Thread t = new Thread(new MyRunnable());
t.start();
- Использование Callable и Future — для задач, которые возвращают результат и могут выбрасывать исключения. Callable передаётся в ExecutorService.
import java.util.concurrent.*;
Callable<Integer> task = () -> {
return 123;
};
ExecutorService executor = Executors.newSingleThreadExecutor();
Future<Integer> future = executor.submit(task);
System.out.println(future.get());
executor.shutdown();
- Использование ExecutorService и пулов потоков — для управления группой потоков и упрощения их создания и завершения.
Эти методы покрывают основные способы создания и управления потоками в Java.