最終更新日時: 2026年04月23日 21時23分31秒 (JST)
yoh が更新

履歴 編集

function
<execution>

# std::execution::run_loop::finish(C++26)

    void finish() noexcept;

## 概要

`run_loop`の状態を終了中(finishing)へ変更する。

## 事前条件

説明専用メンバ`state`は開始(starting)もしくは実行中(running)であること。

## 効果

説明専用メンバ`state`を終了中(finishing)に変更する。

## 例外

投げない

## 同期操作

メンバ関数`finish`および説明専用メンバ関数`pop-front`, `push-back`は不可分(atomically)に実行される。

`finish`は、`nullptr`を返す`pop-front`操作に対して同期する。

## 例

    #include <execution>
    namespace ex = std::execution;

    int main()
    {
      ex::run_loop loop;
      loop.finish();
    }

### 出力

## バージョン

### 言語

- C++26

### 処理系

- Clang: ??
- GCC: ??
- ICC: ??
- Visual C++: ??

## 関連項目

- `run`

## 参照

- P2300R10 `std::execution`
- P3396R1 std::execution wording fixes
- LWG4476. `run_loop` should not have a `set_error` completion