std::atomic_ref<T>::fetch_or
来自 cppreference.cn
< cpp | 原子操作 (atomic) | atomic_ref
仅当 T 是除 cv bool 之外的整数类型时提供 |
||
value_type fetch_or( value_type arg, std::memory_order order = |
(C++20 起) | |
原子地用当前值与 arg 按位或的结果替换所引用对象的值。此操作是读-修改-写操作。内存受 order 值的影响。
当且仅当 std::is_const_v<T> 为 false 时,此重载才参与重载决议。
[编辑] 参数
arg | - | 按位或的另一个参数 |
顺序 | - | 要强制执行的内存顺序约束 |
[编辑] 返回值
所引用对象的值,紧接在此函数生效之前。
[编辑] 缺陷报告
下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。
缺陷报告 | 应用于 | 发布时的行为 | 正确的行为 |
---|---|---|---|
LWG 3508 (P3323R1) |
C++20 | fetch_or 对于 const T 是无意义的 |
限制为只接受非 const T |