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

履歴 編集

customization point object
<execution>

std::execution::get_forward_progress_guarantee(C++26)

namespace std::execution {
  struct get_forward_progress_guarantee_t { unspecified };
  inline constexpr get_forward_progress_guarantee_t get_forward_progress_guarantee{};
}

概要

get_forward_progress_guarantee_tは、Schedulerに関連付けられた実行リソースによる実行エージェントの前方進行保証を取得するクエリオブジェクトである。

効果

説明用の変数schに対して、型Schdecltype((sch))とする。Schschedulerを満たさないとき、get_forward_progress_guarantee不適格となる。

そうでなければ、呼び出し式get_forward_progress_guarantee(sch)は下記と等価。

MANDATE-NOTHROW(AS-CONST(sch).query(get_forward_progress_guarantee))

上記の式の型は、forward_progress_guaranteeであること。

あるSchedulerschに対して、式get_forward_progress_guarantee(sch)forward_progress_guarantee::concurrentを返すとき、そのScheudlerに関連付けられた実行リソースにより作成される全ての実行エージェントは、並行前方進行保証(concurrent forward progress guarantee)を提供する必要がある。 forward_progress_guarantee::parallelを返す場合は、全ての実行エージェントは少なくとも並列前方進行保証 (parallel forward progress guarantee)を提供する必要がある。

例外

投げない

カスタマイゼーションポイント

const修飾Schedulercschに対して式csch.query(get_forward_progress_guarantee)が呼び出される。 このとき、noexcept(csch.query(get_forward_progress_guarantee)) == trueであること。

バージョン

言語

  • C++26

処理系

関連項目

参照