9-те заняття тренувальної програми Ultimate Enterprise Java (2021).
УВАГА! Відеозапис не містить активної частини заняття.
⚡️ Реєстрація на програму: https://www.bobocode.com/
____________________________________________
Patreon: https://www.patreon.com/bobocode
GitHub: https://github.com/bobocode-projects
Telegram: https://t.me/bobocode
LinkedIn: https://bit.ly/2RWPQF5
Twitter: https://bit.ly/3vaQiOl
Тарас в LinkedIn: https://bit.ly/2ElWg8J
Тарас в Twitter: https://bit.ly/33Pmuwg
____________________________________________
00:00 - Нарізка основних моментів
03:16 - Початок
03:35 - Чому важливо вивчати багатопоточність?
07:02 - 2 причини, чому багатопоточність є складною
08:17 - Модель памʼяті Java
09:15 - Дві потенційні проблеми
10:29 - 1. Проблема неконсистентності даних
13:09 - 2. Проблема застарілості даних
15:31 - Топова цитата про багатопоточність в Java
17:09 - Як запустити код в новому потоці?
19:23 - Як перевірити стан потоку?
21:25 - Проблема неконсистентності (Приклад коду)
24:35 - Чому volatile не вирішує проблему неконсистентності?
25:47 - Що таке synchronized?
27:30 - Основні "примітиви" багатопоточності в Java
30:01 - Що має знати Java-розробник?
31:38 - Як заблокувати потік?
34:59 - Що таке "Deadlock"?
39:23 - Як управляти потоком вручну? (wait, notify)
42:03 - Коротко про Concurrency Util
44:47 - Приклади з Executors
46:45 - Fork/Join framework
47:36 - 🔥 Багатопоточне Сортування Злиттям (Merge Sort)
54:12 - Реалізовуємо метод merge
56:28 - Найцікавіше про Fork/Join framework
58:09 - Як створити свій Fork/Join pool?
01:00:25 - Чому важливо знати про спільний Fork/Join pool?
01:02:27 - Заключне слово
#opensource #java #education
розгорнути опис
згорнути опис