File tree Expand file tree Collapse file tree 7 files changed +33
-13
lines changed
Expand file tree Collapse file tree 7 files changed +33
-13
lines changed Original file line number Diff line number Diff line change @@ -35,6 +35,13 @@ constexpr void
3535 - C++20 : `atomic<T>::is_always_lock_free`が`true`であること
3636
3737
38+ ## 事前条件
39+ `order`が以下のメモリオーダーではないこと:
40+
41+ - [`memory_order_release`](/reference/atomic/memory_order.md)
42+ - [`memory_order_acq_rel`](/reference/atomic/memory_order.md)
43+
44+
3845## 効果
3946- 以下のステップを順に繰り返し実行する:
4047 - [`load`](load.md)`(order)`によって現在の値を読み込み、`old`と値を比較する
Original file line number Diff line number Diff line change @@ -30,6 +30,13 @@ constexpr void
3030この関数によってブロッキング待機をしたら、対応する起床関数である[`notify_one()`](notify_one.md)、[`notify_all()`](notify_all.md)によってブロッキング待機を解除できる。
3131
3232
33+ ## 事前条件
34+ `order`が以下のメモリオーダーではないこと:
35+
36+ - [`memory_order_release`](/reference/atomic/memory_order.md)
37+ - [`memory_order_acq_rel`](/reference/atomic/memory_order.md)
38+
39+
3340## 効果
3441- 以下のステップを順に繰り返し実行する:
3542 - 式[`test`](test.md)`(order) != old`を評価する
Original file line number Diff line number Diff line change @@ -20,13 +20,6 @@ namespace std {
2020現在の値を`bool`値として取得する。
2121
2222
23- ## 要件
24- `order`が以下のメモリオーダーではないこと:
25-
26- - [`memory_order_release`](/reference/atomic/memory_order.md)
27- - [`memory_order_acq_rel`](/reference/atomic/memory_order.md)
28-
29-
3023## 戻り値
3124アトミックに読み込まれた`*this`が指している値を返す
3225
Original file line number Diff line number Diff line change @@ -24,7 +24,7 @@ namespace std {
2424現在の値を`bool`値として取得する。
2525
2626
27- ## 要件
27+ ## 事前条件
2828`order`が以下のメモリオーダーではないこと:
2929
3030- [`memory_order_release`](/reference/atomic/memory_order.md)
Original file line number Diff line number Diff line change @@ -33,6 +33,13 @@ namespace std {
3333この関数によってブロッキング待機をしたら、対応する起床関数である[`atomic_flag_notify_one()`](atomic_flag_notify_one.md)、[`atomic_flag_notify_all()`](atomic_flag_notify_all.md)によってブロッキング待機を解除できる。
3434
3535
36+ ## 事前条件
37+ `order`が以下のメモリオーダーではないこと:
38+
39+ - [`memory_order_release`](/reference/atomic/memory_order.md)
40+ - [`memory_order_acq_rel`](/reference/atomic/memory_order.md)
41+
42+
3643## 効果
3744- 以下のステップを順に繰り返し実行する:
3845 - 式[`atomic_flag_test_explicit`](atomic_flag_test_explicit.md)`(object, order) != old`を評価する
Original file line number Diff line number Diff line change @@ -24,11 +24,10 @@ constexpr void
2424
2525
2626## 事前条件
27- - `order`が以下のいずれかであること:
28- - [`memory_order::relaxed`](/reference/atomic/memory_order.md)
29- - [`memory_order::consume`](/reference/atomic/memory_order.md)
30- - [`memory_order::acquire`](/reference/atomic/memory_order.md)
31- - [`memory_order::seq_cst`](/reference/atomic/memory_order.md)
27+ `order`が以下のメモリオーダーではないこと:
28+
29+ - [`memory_order_release`](/reference/atomic/memory_order.md)
30+ - [`memory_order_acq_rel`](/reference/atomic/memory_order.md)
3231
3332
3433## 効果
Original file line number Diff line number Diff line change @@ -37,6 +37,13 @@ namespace std {
3737- (1) : `atomic<T>::is_always_lock_free`が`true`であること
3838
3939
40+ ## 事前条件
41+ `order`が以下のメモリオーダーではないこと:
42+
43+ - [`memory_order_release`](/reference/atomic/memory_order.md)
44+ - [`memory_order_acq_rel`](/reference/atomic/memory_order.md)
45+
46+
4047## 効果
4148- 以下のステップを順に繰り返し実行する:
4249 - [`atomic_load_explicit`](atomic_load_explicit.md)`(object, order)`によって現在の値を読み込み、`old`と値を比較する
You can’t perform that action at this time.
0 commit comments