Skip to main navigation Skip to search Skip to main content

Automated Synthesis of Asynchronizations

  • University of Toronto
  • Université Paris 7
  • Microsoft Research

Research output: Chapter in Book/Report/Conference proceeding › Conference contribution › peer-review

1 Citation (Scopus)

Abstract

Asynchronous programming is widely adopted for building responsive and efficient software, and modern languages such as C# provide async/await primitives to simplify the use of asynchrony. In this paper, we propose an approach for refactoring a sequential program into an asynchronous program that uses async/await, called asynchronization. The refactoring process is parametrized by a set of methods to replace with asynchronous versions, and it is constrained to avoid introducing data races. We investigate the delay complexity of enumerating all data race free asynchronizations, which quantifies the delay between outputting two consecutive solutions. We show that this is polynomial time modulo an oracle for solving reachability in sequential programs. We also describe a pragmatic approach based on an interprocedural data-flow analysis with polynomial-time delay complexity. The latter approach has been implemented and evaluated on a number of non-trivial C# programs extracted from open-source repositories.

Original languageEnglish
Title of host publicationStatic Analysis - 29th International Symposium, SAS 2022, Proceedings
EditorsGagandeep Singh, Caterina Urban
PublisherSpringer Science and Business Media Deutschland GmbH
Pages135-159
Number of pages25
ISBN (Print)9783031223075
DOIs
Publication statusPublished - 1 Jan 2022
Event29th International Static Analysis Symposium, SAS 2022 - Auckland, New Zealand
Duration: 5 Dec 2022 → 7 Dec 2022

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume13790 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference29th International Static Analysis Symposium, SAS 2022
Country/TerritoryNew Zealand
CityAuckland
Period5/12/22 → 7/12/22

Fingerprint

Dive into the research topics of 'Automated Synthesis of Asynchronizations'. Together they form a unique fingerprint.

Cite this