Konkurentné programovanie - 6. seminár z 1.10.2024

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

Seminár z Konkurentného programovania sa venuje exekútorom v balíčku java.util.concurrent ako náhrade za ručnú správu vlákien. Vysvetľuje sa rozhranie Executor a jeho rozšírenie ExecutorService, ktoré pridáva metódy na riadenie životného cyklu vlákien (shutdown, shutdownNow, isShutdown, isTerminated, awaitTermination) a na zadávanie úloh (execute, submit, invokeAll, invokeAny). Preberajú sa konkrétne implementácie vytvárané cez statické metódy triedy Executors – newFixedThreadPool, newCachedThreadPool, newSingleThreadExecutor a newScheduledThreadPool – a rozdiely v počte spravovaných vlákien a čase ich vytvárania. Na úvod je krátko vysvetlená aj oprava chyby s AtomicInteger a metódou putIfAbsent z predchádzajúceho cvičenia. Prednáška uzatvára diskusiou o tom, prečo nie je vhodné mať neobmedzený počet vlákien.

  • Executor a ExecutorService
  • Metódy shutdown, shutdownNow, isShutdown, isTerminated
  • awaitTermination a blokujúce čakanie na ukončenie vlákien
  • Zadávanie úloh cez execute, submit, invokeAll, invokeAny
  • Executors.newFixedThreadPool
  • Executors.newCachedThreadPool a newSingleThreadExecutor
  • Executors.newScheduledThreadPool na plánované úlohy
  • Optimálny počet vlákien vzhľadom na počet jadier procesora

Zhrnutie pripravené s pomocou AI z prepisu videa.