P6: Paralelné spracovanie, robustnosť programu a reflexia (desktop)

Zdroj
ručne priradené
Pridané

Pozrieť na YouTube →

Preber si túto prednášku so svojou AI

Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.

Otvoriť AI: ChatGPT · Claude · Gemini

Zhrnutie prednášky

Prednáška sa venuje paralelnému spracovaniu v Jave. Úvod tvoria organizačné pokyny k projektu: prezentácia pracovnej verzie programu na cvičení do konca 8. týždňa, krátka záverečná dokumentácia s diagramom tried a priebežná práca cez GitHub. Nasleduje stručný návrat k serializácii, kde platí, že objekty potrebujú jeden koreň, z ktorého sa dá dostať ku všetkým prvkom. Hlavná téma vychádza z otázky, ako môže bežať viac programov na jednom procesore. Odpoveďou je prepínanie kontextu, pričom viac jadier ho zrýchľuje a umožňuje aj fyzicky súbežný výpočet. Pojem niť (thread) je analógia k niti myšlienok u človeka. Paralelné spracovanie nemusí program primárne zrýchliť, ale zabráni tomu, aby jedna úloha zablokovala celý program a interakciu s ním. Vytvorenie nite v Jave je ukázané odvodením od triedy Thread, implementáciou metódy run a spustením cez start.

  • - Pracovnú verziu programu treba ukázať na cvičení najneskôr do konca 8. týždňa; stačí niekoľko tried s dedením a polymorfizmom, používateľské rozhranie netreba.
  • - Záverečná dokumentácia je krátka: názov a zámer, diagram tried a vysvetlenie, ako projekt plní kritériá hodnotenia; práca prebieha priebežne cez GitHub.
  • - Serializácia vyžaduje jeden koreňový objekt, z ktorého sú dosiahnuteľné všetky ostatné prvky; na čiastkové úpravy rozsiahlych údajov je vhodnejšia databáza.
  • - Viac programov na jednom procesore beží vďaka prepínaniu kontextu, teda odkladaniu a obnovovaniu stavu; viac jadier to zrýchľuje a umožňuje skutočný paralelizmus.
  • - Niť (thread) je programátorská analógia niti myšlienok; paralelné spracovanie zabraňuje zablokovaniu programu jednou dlhou úlohou.
  • - V Jave sa niť vytvára odvodením od triedy Thread s implementáciou metódy run.
  • - Niť sa spúšťa metódou start, nie priamym volaním run.

Zhrnutie pripravené s pomocou AI z prepisu videa.