ВІДЕОУРОК № 4. ExecutorService. ThreadPool. Fork/Join Framework
Після завершення цього модулю учасники отримають розуміння концепції багатопотокового програмування, ознайомляться з роботою потоків, їх станом та навчаться створювати й використовувати їх. Також будуть ознайомлені з основними ідеями щодо роботи з потоками, як-от м'ютекс, монітор та семафор, та навчаться використовувати ключове слово synchronized, а також семафори для забезпечення одночасного доступу до ресурсів з декількох потоків
Під час цього модулю ви дізнаєтеся про набір колекцій, які оптимальніше та надійніше працюють у багатопотоковому середовищі, ніж стандартні універсальні колекції з пакету java.util. Буде розглянуто реалізацію часто вживаних колекцій. На завершення модулю ви зможете освоїти блокуючі черги, що використовуються для взаємодії з пулами потоків.
На цьому уроці буде розглянуто основи асинхронного програмування з використанням мови Java. У процесі заняття ви ознайомитеся з концепцією асинхронного програмування, визначите різницю між ним та іншими підходами до багатопотокового програмування, і навчитеся створювати та запускати асинхронні завдання.
На цьому занятті буде розглянута робота з групою потоків за допомогою ThreadPool. Ми побудуємо власну реалізацію пула потоків і розглянемо, як керується життєвим циклом потоків за допомогою ExecutorService. В кінці заняття ви пізнаєте особливості такого фреймворку, як Fork/Join, і зрозумієте, навіщо він потрібний, а також навчитеся його використовувати на практиці.