Sobes.tech
Junior — Middle

Aké implementácie rozhrania ExecutorService poznáš a v čom sa líšia?

sobes.tech AI

Odpoveď od AI

ExecutorService je rozhranie na správu vlákien a asynchrónne vykonávanie úloh. Hlavné implementácie zo štandardnej knižnice Java:

  • ThreadPoolExecutor — najflexibilnejšia a často používaná implementácia, umožňuje konfigurovať veľkosť poolu, frontu úloh a politiku spracovania preťaženia.
  • ScheduledThreadPoolExecutor — rozšírenie ThreadPoolExecutor, podporuje plánovanie úloh s oneskorením alebo periodické vykonávanie.
  • ForkJoinPool — určené pre úlohy, ktoré je možné rozdeliť na podúlohy (používa sa v rámci Fork/Join frameworku), efektívne pre paralelné výpočty.

Rozdiely:

  • ThreadPoolExecutor je vhodný pre všeobecné účely.
  • ScheduledThreadPoolExecutor — pre úlohy s časovačmi.
  • ForkJoinPool — pre rekurzívny paralelizmus.

Príklad vytvorenia ThreadPoolExecutor:

ExecutorService executor = Executors.newFixedThreadPool(4);
executor.submit(() -> System.out.println("Úloha dokončená"));
executor.shutdown();