Thread и Runnable
В Java поток описывают два связанных типа:
Thread— сам поток выполнения. У него естьstart()(запустить) иrun()(код, который выполнится).Runnable— интерфейс с одним методомrun(). Это просто «что нужно сделать», без знания о потоках.ThreadберётRunnableи выполняет его в отдельном потоке.
Runnable task = () -> System.out.println("работаю"); // что делать
Thread t = new Thread(task); // в каком потоке
t.start();
Разделение удобно тем, что одну и ту же задачу (Runnable) можно выполнить и в Thread, и через пул потоков (ExecutorService) — она не привязана к конкретному способу запуска.
🎤 Закрыл тему, если можешь объяснить:
• чем `Thread` отличается от `Runnable` и как они связаны.