Pregled bibliografske jedinice broj: 1198917
Comparison of Structured Concurrency Constructs in Java and Kotlin – Virtual Threads and Coroutines
Comparison of Structured Concurrency Constructs in Java and Kotlin – Virtual Threads and Coroutines // Proceedings of the 45th International Convention for Information and Communication Technology, Electronics and Microelectronics - MIPRO 2022 / Skala, Karolj (ur.).
Opatija: Hrvatska udruga za informacijsku i komunikacijsku tehnologiju, elektroniku i mikroelektroniku - MIPRO, 2022. str. 1684-1689 (predavanje, međunarodna recenzija, cjeloviti rad (in extenso), znanstveni)
CROSBI ID: 1198917 Za ispravke kontaktirajte CROSBI podršku putem web obrasca
Naslov
Comparison of Structured Concurrency Constructs in
Java and Kotlin – Virtual Threads and Coroutines
Autori
Beronić, Dora ; Modrić, Lara ; Mihaljević, Branko ; Radovan, Aleksander
Vrsta, podvrsta i kategorija rada
Radovi u zbornicima skupova, cjeloviti rad (in extenso), znanstveni
Izvornik
Proceedings of the 45th International Convention for Information and Communication Technology, Electronics and Microelectronics - MIPRO 2022
/ Skala, Karolj - Opatija : Hrvatska udruga za informacijsku i komunikacijsku tehnologiju, elektroniku i mikroelektroniku - MIPRO, 2022, 1684-1689
Skup
45th International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO 2022)
Mjesto i datum
Opatija, Hrvatska, 23.05.2022. - 27.05.2022
Vrsta sudjelovanja
Predavanje
Vrsta recenzije
Međunarodna recenzija
Ključne riječi
Concurrent Programing, Virtual Threads, Coroutines, Structured Concurrency, Java, Kotlin
Sažetak
Ubiquitous multi-core processors with a significant increase in computing power resulted in an omnipresent expansion of concurrent server applications. However, modern multithreaded applications exposed a substantial number of efficiency-related challenges. Consequently, lightweight structured concurrency constructs emerged in various multithreaded applications, as the traditional heavyweight threads model is expensive in regards to memory due to its high dependency on OS kernel threads. Modern programming languages such as Kotlin and Java are both built on the Java Virtual Machine (JVM) and are commonly used in mobile application development and server-side applications, offering, by default, the traditional threads approach. However, Kotlin also includes support for a lightweight concurrency model with coroutines, while Java's virtual threads, announced in the OpenJDK's Project Loom, are still experimental. Such contemporary concurrency implementations are primarily enabling an increase in application performance and efficiency. This paper presents an overview of different approaches to structured concurrency and explores their implementation in programming languages Java and Kotlin. It provides a comparative analysis of traditional threads with coroutines in Kotlin and virtual threads in Java. Based on the conducted testing using benchmarks, we analyzed their performance, described implementation differences, and explored their utilization possibilities and adaptation to real-world use-case scenarios.
Izvorni jezik
Engleski
Znanstvena područja
Računarstvo
POVEZANOST RADA
Ustanove:
Visoko učilište Algebra, Zagreb ,
RIT Croatia, Dubrovnik