<future>ヘッダでは、並行プログラミングのためのデザインパターンのひとつであるFutureパターンに関するクラス・関数を提供する。
futureはデータの準備ができるまで待機してからデータを読み取る。
promiseはデータを書き込み、準備ができたことをfutureに通知する。
packaged_taskは関数の戻り値をデータの書き込みと見なし、関数終了時にfutureに通知する。さらにこのパターンを容易に扱うためのasync()関数を提供する。
| 名前 | 説明 | 対応バージョン |
|---|---|---|
future_errc |
futureのエラー値(enum class) |
C++11 |
launch |
async()関数の実行ポリシー(enum class) |
C++11 |
future_status |
futureの状態値(enum class) |
C++11 |
is_error_code_enum |
future_errcをエラーコードとして扱うための特殊化(class template) |
C++11 |
make_error_code |
future_errcからerror_codeを生成する(function) |
C++11 |
make_error_condition |
future_errcからerror_conditionを生成する(function) |
C++11 |
future_category |
future_errcのためのエラーカテゴリを取得する(function) |
C++11 |
future_error |
futureのエラーに関する例外クラス(class) |
C++11 |
promise |
データを書き込み、データの準備ができたことを通知する(class template) | C++11 |
future |
データの準備ができるまで待機し、データを読み取る(class template) | C++11 |
shared_future |
共有方式のfuture(class template) |
C++11 |
packaged_task |
非同期タスクの管理(class template) | C++11 |
async |
処理の非同期実行(function template) | C++11 |
バージョン
言語
- C++11