非同期IO
コールバックなどを利用した非同期I/Oの結果の取得は、設計やプログラミングが煩雑になる。特に出力よりも入力で問題が大きい。非同期I/Oに限った話ではないが、一般的な非同期処理を記述する「非同期プログラミング」を容易にするために、ライブラリや言語構文によるサポートが用意されているプログラミング環境もある。
ライブラリによるサポートは、例えばJava 1.5にて標準化されたFutureや、C++11にて標準化されたstd::async/std::futureなどがあり、これらはスレッドベースのFuture パターン (Promise) を実現する。.NET Framework/.NET CoreではC#などの.NET言語から利用可能なタスク並列ライブラリ(英語版) (Task Parallel Library, TPL) が、またMicrosoft Visual C++の同時実行ランタイムではC++から利用可能な並列パターンライブラリ(英語版) (Parallel Patterns Library, PPL) が用意されている。