auto final_suspend() noexcept;
概要
タスクコルーチンの最終サスペンドポイントを制御するAwaitableオブジェクトを返す。 プログラマが本関数を直接利用することは想定されていない。
戻り値
STATE(*this)に関連付けられた非同期操作を完了するメンバ関数を持つ、未規定のAwaitableオブジェクトを返す。stをSTATE(*this)への参照とする。非同期完了は最初にst.handle.destroy()によってコルーチンフレームを破棄し、続いて下記を呼び出す。
bool(st.error)がtrueのとき、set_error(std::move(st.rcvr), std::move(st.error))。そうでなければ、is_void_v<T>がtrueのとき、set_value(std::move(st.rcvr))。そうでなければ、set_value(std::move(st.rcvr), *std::move(st.result))
例外
投げない
バージョン
言語
- C++26
処理系
- Clang: ??
- GCC: ??
- ICC: ??
- Visual C++: ??