Можно создать дубликат:
Java: “implements Runnable” vs. “extends Thread”новая тема (Runnable runnableObj) Vs. расширяет Thread
Я просто интересен, есть некоторые тонкие различия между созданием своего собственного объекта, который расширяет тему и создание потока с помощью ниток (Runnable) конструктор?
У меня есть код, который отлично работает, когда я использую классы, которые расширяют Thread, но если я попытаюсь использовать логику, которая создает Threads, используя конструктор Thread (Runnable), новые потоки, похоже, не работают должным образом - t обнаруживают, что они живы так же, как когда я использую пользовательские подклассы, которые я создал, и они, кажется, не заканчиваются.
В моем коде я просто создаю несколько потоков, затем просматриваю список моих тем, чтобы найти тот, который жив, и присоединяется к нему, пока он не умрет. Затем я снова ищу поток в списке, который жив и присоединяется к нему. Это продолжается до тех пор, пока все нити не умрут.
Спасибо за чтение.
Это дубликат, хотя вы можете показать свой код (и изменить название), чтобы сделать его уникальным. – Gray