Structured Concurrency: A Review

Yi An Chen, Yi Ping You

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Today, mobile applications use thousands of concurrent tasks to process multiple sensor inputs to ensure a better user experience. With this demand, the ability to manage these concurrent tasks efficiently and easily is becoming a new challenge, especially in their lifetimes. Structured concurrency is a technique that reduces the complexity of managing a large number of concurrent tasks. There have been several languages or libraries (e.g., Kotlin, Swift, and Trio) that support such a paradigm for better concurrency management. It is worth noting that structured concurrency has been consistently implemented on top of coroutines across all these languages and libraries. However, there are no documents or studies in the literature that indicate why and how coroutines are relevant to structured concurrency. In contrast, the mainstream community views structured concurrency as a successor to structured programming; that is, the concept of "structure"extends from ordinary programming to concurrent programming. Nevertheless, such a viewpoint does not explain, as the concept of structured concurrency came out more than 40 years later after structured programming was introduced in the early 1970s, whereas concurrent programming started in the 1960s. In this paper, we introduce a new theory to complement the origin of structured concurrency from historical and technical perspectives-it is the foundation established by coroutines that gives birth to structured concurrency.

Original languageEnglish
Title of host publication51st International Conference on Parallel Processing, ICPP 2022 - Workshop Proceedings
PublisherAssociation for Computing Machinery
ISBN (Electronic)9781450394451
DOIs
StatePublished - 29 Aug 2022
Event51st International Conference on Parallel Processing, ICPP 2022 - Virtual, Online, France
Duration: 29 Aug 20221 Sep 2022

Publication series

NameACM International Conference Proceeding Series

Conference

Conference51st International Conference on Parallel Processing, ICPP 2022
Country/TerritoryFrance
CityVirtual, Online
Period29/08/221/09/22

Keywords

  • concurrent programming
  • structured concurrency

Fingerprint

Dive into the research topics of 'Structured Concurrency: A Review'. Together they form a unique fingerprint.

Cite this