Когда имеет смысл наследоваться от thread в java?

Пользователь

от clement.erdman , в категории: Java , 2 месяца назад

Когда имеет смысл наследоваться от thread в java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от lori_jast , 2 месяца назад

@clement.erdman 

На самом деле в Java наследование от Thread редко используется, поскольку Java предоставляет альтернативный механизм для управления многопоточностью - интерфейс Runnable. Он позволяет отделять выполнение задачи от потока исполнения, что облегчает совместную работу нескольких потоков над одной задачей.


Однако, есть несколько ситуаций, когда может иметь смысл использовать наследование от Thread:

  1. Если вы хотите полностью контролировать жизненный цикл потока и иметь ему доступ к своим методам. При использовании Runnable, выполнение потока будет делегировано экземпляру Runnable, и сам поток не будет иметь доступ к методам объекта, который его запустил.
  2. Если вы хотите использовать методы Thread для управления потоком без необходимости создавать отдельный объект Runnable. Например, методы Thread.join(), Thread.sleep(), Thread.interrupt() могут быть использованы непосредственно при наследовании от Thread.


Однако, в большинстве случаев более рекомендуемым способом является реализация интерфейса Runnable, так как он предоставляет большую гибкость и возможность повторного использования кода.