最終更新日時: 2026年02月08日 18時00分28秒 (JST)
yoh が更新

履歴 編集

function
<execution>

# std::execution::counting_scope::try-associate(C++26)

    assoc-t try-associate() noexcept; // exposition only

## 概要

非同期スコープとの関連付けを試行する、説明専用のメンバ関数。 非同期トークン型`token`の`try_associate`メンバ動作を定義する。

## 効果

説明用のメンバ変数`count`が`max_associations`と等しいとき、何もしない。 そうでなければ、説明用のメンバ変数`state`に応じて、

- `unused`のとき、`count`をインクリメントし、`state`を`open`に変更する。
- `open`または`open-and-joining`のとき、`count`をインクリメントする。
- それ以外のとき、何もしない。

## 戻り値

`count`がインクリメントされたとき、`*this`に関連付けられた有効(engaged)な`assoc-t`型のオブジェクトを返す。それ以外のときは、`assoc-t()`を返す。

## 例外

投げない

## バージョン

### 言語

- C++26

## 参照

- P3149R11 `async_scope` - Creating scopes for non-sequential concurrency
- P3815R1 Add `scope_association` concept to P3149