@@ -11,33 +11,30 @@ namespace std {
1111```
1212
1313## 概要
14- クラス`stop_source`は、停止要求を作成するためのインターフェースを提供する。
15- また、自身と停止状態を共有する[`stop_token`](stop_token.md)クラスのオブジェクトを構築できる。
14+ クラス`stop_source`は、停止状態を[`stop_token`](stop_token.md)と共有所有し、停止要求を作成するためのインターフェースを提供する。
1615
17- ## 備考
18- ある`stop_source`に対して作成した停止要求は、同じ停止状態を共有するほかの`stop_source`や`stop_token`から可視になる。
16+ `stop_source`は[`stoppable-source`](stoppable-source.md)、[`copyable`](/reference/concepts/copyable.md)、[`equality_comparable`](/reference/concepts/equality_comparable.md)、[`swappable`](/reference/concepts/swappable.md)のモデルである。
1917
20- 一度停止要求を作成すると、それをあとで取り下げることはできない。また、それ以降に作成した停止要求は効果を持たない。
2118
2219## メンバ関数
2320
2421| 名前 | 説明 | 対応バージョン |
25- |-------------------------------------------------|-------------------------------------------------------------- ------|-------|
22+ |------| ------|-------|
2623| [`(constructor)`](stop_source/op_constructor.md) | コンストラクタ | C++20 |
2724| [`(destructor)`](stop_source/op_destructor.md) | デストラクタ | C++20 |
2825| [`operator=`](stop_source/op_assign.md) | 代入演算子 | C++20 |
2926| [`swap`](stop_source/swap.md) | 別の`stop_source`と交換する | C++20 |
30- | [`get_token`](stop_source/get_token.md) | 自身と停止状態を共有する[`stop_token`](stop_token.md)を構築して返す | C++20 |
27+ | [`get_token`](stop_source/get_token.md) | 自身と停止状態を共有する[`stop_token`](stop_token.md)を返す | C++20 |
3128| [`stop_possible`](stop_source/stop_possible.md) | 停止要求を作成可能どうかを取得する | C++20 |
3229| [`stop_requested`](stop_source/stop_requested.md)| 停止要求を作成したかどうかを取得する | C++20 |
3330| [`request_stop`](stop_source/request_stop.md) | 停止要求を作成する | C++20 |
3431
3532## 非メンバ関数
3633| 名前 | 説明 | 対応バージョン |
37- |---------------------------------|--------------------------------- ------|-------|
38- | [`operator==`](stop_source/op_equal.md) | 等値演算子 | C++20 |
39- | [`operator!=`](stop_source/op_not_equal.md) | 非等値演算子 | C++20 |
40- | [`swap`](stop_source/swap_free.md) | 2つの`stop_source`オブジェクトを入れ替える | C++11 |
34+ |------| ------|-------|
35+ | [`operator==`](stop_source/op_equal.md) | 等値演算子 | C++20 |
36+ | [`operator!=`](stop_source/op_not_equal.md) | 非等値演算子 | C++20 |
37+ | [`swap`](stop_source/swap_free.md) | 2つの`stop_source`オブジェクトを入れ替える | C++20 |
4138
4239
4340## 例
@@ -73,14 +70,23 @@ int main()
7370```
7471```
7572
73+
7674## バージョン
7775### 言語
7876- C++20
7977
80-
8178### 処理系
8279- [ Clang] ( /implementation.md#clang ) : ??
8380- [ GCC] ( /implementation.md#gcc ) : ??
8481- [ ICC] ( /implementation.md#icc ) : ??
8582- [ Visual C++] ( /implementation.md#visual_cpp ) : ??
8683
84+
85+ ## 関連項目
86+ - [ ` stop_token ` ] ( stop_token.md )
87+ - [ ` stop_callback ` ] ( stop_callback.md )
88+
89+
90+ ## 参照
91+ - [ P0660R10 Stop token and joining thread] ( http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p0660r10.pdf )
92+ - [ P2300R10 ` std::execution ` ] ( https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2024/p2300r10.html )
0 commit comments