Structured Concurrency: A Review

Yi An Chen, Yi Ping You

研究成果: Conference contribution同行評審


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.

主出版物標題51st International Conference on Parallel Processing, ICPP 2022 - Workshop Proceedings
發行者Association for Computing Machinery
出版狀態Published - 29 8月 2022
事件51st International Conference on Parallel Processing, ICPP 2022 - Virtual, Online, France
持續時間: 29 8月 20221 9月 2022


名字ACM International Conference Proceeding Series


Conference51st International Conference on Parallel Processing, ICPP 2022
城市Virtual, Online


深入研究「Structured Concurrency: A Review」主題。共同形成了獨特的指紋。