Kanade, Aditya (2019) Event-Based Concurrency: Applications, Abstractions, and Analyses. In: ADVANCES IN COMPUTERS, 112 . pp. 379-412.
PDF
adv_com_112_379-412_2019.pdf - Published Version Restricted to Registered users only Download (527kB) | Request a copy |
Abstract
Due to the increased emphasis on responsiveness, event-based design has become mainstream in software development. Software applications are required to maintain responsiveness even while performing multiple tasks simultaneously. This has resulted in the adoption of a combination of thread and event-based concurrency in modern software such as smartphone applications. In this chapter, we present the fundamental programming and semantic concepts in the combined concurrency model of threads and events. The paradigm of event-based concurrency cuts across programming languages and application frameworks. We give a flavor of event-driven programming in a few languages and application frameworks. The mix of threads and events complicates reasoning about correctness of applications under all possible interleavings. We discuss advances in the core concurrency analysis techniques for event-driven applications with focus on happens-before analysis, race detection, and model checking. We also survey other analysis techniques and related programming abstractions.
Item Type: | Journal Article |
---|---|
Publication: | ADVANCES IN COMPUTERS |
Series.: | Advances in Computers |
Publisher: | ELSEVIER ACADEMIC PRESS INC |
Additional Information: | Copyright of this article belongs to ELSEVIER ACADEMIC PRESS INC |
Keywords: | EXPLORATION; Threads; Events; Concurrency; Asynchrony; Bug -detection; Verification |
Department/Centre: | Division of Electrical Sciences > Computer Science & Automation |
Date Deposited: | 23 Jan 2020 10:35 |
Last Modified: | 26 Aug 2022 09:55 |
URI: | https://eprints.iisc.ac.in/id/eprint/64222 |
Actions (login required)
View Item |