Logo des Repositoriums
  • English
  • Deutsch
Anmelden
Keine TU-ID? Klicken Sie hier für mehr Informationen.
  1. Startseite
  2. Publikationen
  3. Publikationen der Technischen Universität Darmstadt
  4. Zweitveröffentlichungen
  5. Thread-Safe Reactive Programming
 
  • Details
2018
Zweitveröffentlichung
Artikel
Verlagsversion

Thread-Safe Reactive Programming

File(s)
Download
Hauptpublikation
3276477.pdf
CC BY 4.0 International
Format: Adobe PDF
Size: 1.45 MB
TUDa URI
tuda/6395
URN
urn:nbn:de:tuda-tuprints-145553
DOI
10.25534/tuprints-00014555
Autor:innen
Drechsler, Joscha
Mogk, Ragnar
Salvaneschi, Guido
Mezini, Mira
Kurzbeschreibung (Abstract)

The execution of an application written in a reactive language involves transfer of data and control flow between imperative and reactive abstractions at well-defined points. In a multi-threaded environment, multiple such interactions may execute concurrently, potentially causing data races and event ordering ambiguities. Existing RP languages either disable multi-threading or handle it at the cost of reducing expressiveness or weakening consistency. This paper proposes a model for thread-safe reactive programming (RP) that ensures abort-free strict serializability under concurrency while sacrificing neither expressiveness nor consistency. We also propose an architecture for integrating a corresponding scheduler into the RP language runtime, such that thread-safety is provided "out-of-the-box" to the applications. We show the feasibility of our proposal by providing and evaluating a ready-to-use implementation integrated into the REScala programming language. The scheduling algorithm is formally proven correct. A thorough empirical evaluation shows that reactive applications build on top of it scale with multiple threads, while the scheduler incurs acceptable performance overhead in a single-threaded configuration. The scalability enabled by our scheduler is roughly on-par with that of hand-crafted application-specific locking and better than the scalability enabled by a scheduler using an off-the-shelf software transactional memory library.

Sprache
Englisch
Fachbereich/-gebiet
20 Fachbereich Informatik > Softwaretechnik
Forschungsprojekte und Grants
DFG-Sonderforschungsbereiche (inkl. Transregio) > Sonderforschungsbereiche > SFB 1053: MAKI – Multi-Mechanismen-Adaption für das künftige Internet > A: Konstruktionsmethodik > Teilprojekt A2: Entwurf
DFG-Sonderforschungsbereiche (inkl. Transregio) > Sonderforschungsbereiche > SFB 1053: MAKI – Multi-Mechanismen-Adaption für das künftige Internet > C: Kommunikationsmechanismen > Teilprojekt C2: Informationszentrische Sicht
DDC
000 Allgemeines, Informatik, Informationswissenschaft > 004 Informatik
Institution
Universitäts- und Landesbibliothek Darmstadt
Ort
Darmstadt
Titel der Zeitschrift / Schriftenreihe
Proceedings of the ACM on Programming Languages
Startseite
1
Endseite
30
Jahrgang der Zeitschrift
2
Heftnummer der Zeitschrift
OOPSLA
ISSN
2475-1421
Verlag
ACM
Publikationsjahr der Erstveröffentlichung
2018
Verlags-DOI
10.1145/3276477
PPN
525055959

  • TUprints Leitlinien
  • Cookie-Einstellungen
  • Impressum
  • Datenschutzbestimmungen
  • Webseitenanalyse
Diese Webseite wird von der Universitäts- und Landesbibliothek Darmstadt (ULB) betrieben.