構造化された並行性
構造化された並行性の概念は2016年にマルティン・スーストリク (Martin Sústrik) が非同期的に呼び出したルーチンをキャンセルする問題を例として定式化され、C言語のライブラリlibdillとして実装された。 2018年にはナサニエル・J・スミス (Nathaniel J. Smith) が非同期処理の実装の欠点を克服するものとして自身のPython言語の非同期処理ライブラリTrioに実装した。 同じ年さらにKotlin言語のコルーチン・ライブラリを開発していたロマーン・エリザーロフ (Роман Елизаров, Roman Elizarov) も同様のアイデアにたどり着いている。2021年にはSwift 5.5で言語機能として導入された。 Java、Scala、その他の言語のライブラリでもこの概念に基づく実装がある。
非同期処理を用いたプログラム開発に対応する言語やライブラリにおいて非同期処理の呼び出しは、しばしばその後の監視や再結合なしに行うことができ、プログラム構文上でのフローの把握の難しさや例外処理の困難さといった固有の問題が生じている。
Pythonの非同期処理ライブラリasyncioの代替となるべく開発されたTrioでは、並行処理を行うタスクは async with を用いたナーセリー(nursery、託児所・保育所の意)とよばれるブロック内でのみ起動できる。 start_soon() で起動したタスクは並行して実行され、両者が終了した時点でナーセリーから抜けることになり、プログラマはナーセリーの外でこれらの非同期タスクの心配をする必要はなくなる。