最終更新日時(UTC):
が更新

履歴 編集

function
<execution>

std::execution::task::promise_type::final_suspend(C++26)

auto final_suspend() noexcept;

概要

タスクコルーチンの最終サスペンドポイントを制御するAwaitableオブジェクトを返す。 プログラマが本関数を直接利用することは想定されていない。

戻り値

STATE(*this)に関連付けられた非同期操作を完了するメンバ関数を持つ、未規定のAwaitableオブジェクトを返す。stSTATE(*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

処理系

参照