Netokracija.rs

Zašto je Java 8 rešenje za asinhroni i paralelni rad?

U saradnji sa organizacijom HeapSpace održano je prvo predavanje o Javi na 43. DaFED okupljanju. U sredu, 4. maja u Amfiteatru centralne zgrade Univerziteta u Novom Sadu pričalo se o problemima vezanim za asinhroni i paralelni rad i rešenjim koja se nude kroz novitete u Javi 8.

Zašto asinhrono programiranje?

Od nedavno je asinhrono programiranje postalo standardna programska paradigma, ali je sa nama od ranih početaka programiranja zbog potrebe da se najbolje iskoriste kapaciteti hardvera. Danas je ono standardni način za izradu sistema sa velikim saobraćajem dok Java 7 i 8 donose već poznate koncepte asinhronog programiranja.

U suštini, asinhrono programiranje je potrebno da bi bilo moguće sa jednim thread-om procesirati više zadataka, a da nijedan ne blokira taj thread. U svom predavanju Asinhrone budućnosti i verteksi, Igor Spasić (HeapSpace) je pričao o rešenjima koje Java 8 nudi za asinhrono programiranje ali i o Java serveru Vertx.

Koje su to novine u Javi 8?

Java 8 može da se nosi i sa asinhronim i multithread programiranjem i nudi nove alate kojima se može uticati na asinhrono programiranje. Tako sa Executor klasom može da se pokrene više poslova koji će raditi paralelno, tako što je omogućeno kreiranje više varijanti thread pool-ova.

A kako uvezati dva asinhrona ‘taska’ jedan za drugim?

U Javi 8 koncept Future je otišao korak dalje sa CompletableFuture klasom koja sada nudi 36+ metoda. Ova klasa omogućava da se kreiraju i izvrše lanac asinhronih taskova kao i paralelno procesiranje. Bilo da se taskovi izvršavaju paralelno, dva u isto vreme ili jedan za drugim, ova klasa omogućava da se automatski po završetku dobiju rezultati svakog taska.

Šta to još donosi Java 8 kao i više o Vertx serveru saznajte u Igorovom predavanju:

DaFED su kao besplatan edukativni događaj namenjen zajednici podržale kompanije Vega IT Sourcing i Eton Digital.