Java многопоточность часть 5

preview_player
Показать описание
Описывает общие принципы работы метода join() класса Thread.
Рекомендации по теме
Комментарии
Автор

Спасибо тебе, реально классно расшарил

DimaMsuVmk
Автор

"оставляет основной поток ждать" - те т1 не ждет а ждет маин? Непонятно вот что- если маин поток ждет то и т1 поток ждет пока т2 выполнится, или нет ?

Евгений-чкф
Автор

неверится что весь поток останавливается и ждет пока выполнится т2, те выходить что т1 у нас ждет пока выполнится т2, так я верно понял вас?

Евгений-чкф
Автор

Я правильно понимаю, что имея 3 потока: main, p1 и p2 и стартанув их, мы имеем параллельное выполнение всех трех потоков.
Если же мы сделаем: p1.join(); p2.join(); мы переходим из многопотокового состояния в двухпотоковое (p1 и p2 выполняются параллельно при остановленном потоке main), т.е. будет выполняться:
поток 1 - main ждет его завершения и параллельно выполняется поток 2
поток main - после завершения поток 1, вызывает p2.join()
поток 2 - если он не завершился до завершения потока 1, поток main ждет, пока он завершится, если поток 2 уже завершен, возобновляется поток main
поток main - после завершения потока 2

РоманК-вт