MSTL 1.4.0
A Modern C++ Library with extended functionality, web components, and utility libraries
载入中...
搜索中...
未找到
atomic< bool >结构体 参考

bool类型的原子特化 更多...

#include <atomic.hpp>

Public 类型

using value_type = bool
 值类型

Public 成员函数

constexpr atomic (const bool value) noexcept
 构造函数
bool operator= (const bool value) noexcept
 赋值运算符
bool operator= (const bool value) volatile noexcept
 volatile版本的赋值运算符
 operator bool () const noexcept
 类型转换运算符
 operator bool () const volatile noexcept
 volatile版本的类型转换运算符
bool is_lock_free () const noexcept
 检查是否支持无锁操作
bool is_lock_free () const volatile noexcept
 volatile版本的检查是否支持无锁操作
void store (const bool value, const memory_order mo=memory_order_seq_cst) noexcept
 原子存储操作
void store (const bool value, const memory_order mo=memory_order_seq_cst) volatile noexcept
 volatile版本的原子存储操作
bool load (const memory_order mo=memory_order_seq_cst) const noexcept
 原子加载操作
bool load (const memory_order mo=memory_order_seq_cst) const volatile noexcept
 volatile版本的原子加载操作
bool exchange (const bool value, const memory_order mo=memory_order_seq_cst) noexcept
 原子交换操作
bool exchange (const bool value, const memory_order mo=memory_order_seq_cst) volatile noexcept
 volatile版本的原子交换操作
bool compare_exchange_weak (bool &value1, const bool value2, const memory_order success, const memory_order failure) noexcept
 弱比较交换操作
bool compare_exchange_weak (bool &value1, const bool value2, const memory_order success, const memory_order failure) volatile noexcept
 volatile版本的弱比较交换操作
bool compare_exchange_weak (bool &value1, const bool value2, const memory_order mo=memory_order_seq_cst) noexcept
 简化版弱比较交换操作
bool compare_exchange_weak (bool &value1, const bool value2, const memory_order mo=memory_order_seq_cst) volatile noexcept
 volatile版本的简化版弱比较交换操作
bool compare_exchange_strong (bool &value1, const bool value2, const memory_order success, const memory_order failure) noexcept
 强比较交换操作
bool compare_exchange_strong (bool &value1, const bool value2, const memory_order success, const memory_order failure) volatile noexcept
 volatile版本的强比较交换操作
bool compare_exchange_strong (bool &value1, const bool value2, const memory_order mo=memory_order_seq_cst) noexcept
 简化版强比较交换操作
bool compare_exchange_strong (bool &value1, const bool value2, const memory_order mo=memory_order_seq_cst) volatile noexcept
 volatile版本的简化版强比较交换操作
void wait (const bool old, const memory_order mo=memory_order_seq_cst) const noexcept
 等待值改变
void notify_one () noexcept
 通知一个等待线程
void notify_all () noexcept
 通知所有等待线程
 operator bool () const noexcept
 类型转换运算符
 operator bool () const volatile noexcept
 volatile版本的类型转换运算符

静态 Public 属性

static constexpr bool is_always_lock_free = true
 是否总是无锁

详细描述

bool类型的原子特化

注解
提供bool类型的原子操作

在文件 atomic.hpp289 行定义.

构造及析构函数说明

◆ atomic()

atomic< bool >::atomic ( const bool value)
inlineconstexprnoexcept

构造函数

参数
value初始值

在文件 atomic.hpp305 行定义.

成员函数说明

◆ compare_exchange_strong() [1/2]

bool atomic< bool >::compare_exchange_strong ( bool & value1,
const bool value2,
const memory_order mo = memory_order_seq_cst )
inlinenoexcept

简化版强比较交换操作

参数
value1期望值
value2期望设置的值
mo内存顺序
返回
是否交换成功

在文件 atomic.hpp472 行定义.

引用了 memory_order_seq_cst.

◆ compare_exchange_strong() [2/2]

bool atomic< bool >::compare_exchange_strong ( bool & value1,
const bool value2,
const memory_order success,
const memory_order failure )
inlinenoexcept

强比较交换操作

参数
value1期望值
value2期望设置的值
success成功时的内存顺序
failure失败时的内存顺序
返回
是否交换成功

在文件 atomic.hpp452 行定义.

引用了 success.

◆ compare_exchange_weak() [1/2]

bool atomic< bool >::compare_exchange_weak ( bool & value1,
const bool value2,
const memory_order mo = memory_order_seq_cst )
inlinenoexcept

简化版弱比较交换操作

参数
value1期望值
value2期望设置的值
mo内存顺序
返回
是否交换成功

在文件 atomic.hpp431 行定义.

引用了 memory_order_seq_cst.

◆ compare_exchange_weak() [2/2]

bool atomic< bool >::compare_exchange_weak ( bool & value1,
const bool value2,
const memory_order success,
const memory_order failure )
inlinenoexcept

弱比较交换操作

参数
value1期望值
value2期望设置的值
success成功时的内存顺序
failure失败时的内存顺序
返回
是否交换成功

在文件 atomic.hpp411 行定义.

引用了 success.

◆ exchange()

bool atomic< bool >::exchange ( const bool value,
const memory_order mo = memory_order_seq_cst )
inlinenoexcept

原子交换操作

参数
value要交换的值
mo内存顺序
返回
交换前的值

在文件 atomic.hpp392 行定义.

引用了 memory_order_seq_cst.

◆ is_lock_free()

bool atomic< bool >::is_lock_free ( ) const
inlinenoexcept

检查是否支持无锁操作

返回
是否支持无锁

在文件 atomic.hpp343 行定义.

◆ load()

bool atomic< bool >::load ( const memory_order mo = memory_order_seq_cst) const
inlinenoexcept

原子加载操作

参数
mo内存顺序
返回
加载的值

在文件 atomic.hpp375 行定义.

引用了 memory_order_seq_cst.

◆ operator bool() [1/2]

atomic< bool >::operator bool ( ) const
inlinenoexcept

类型转换运算符

返回
当前值

在文件 atomic.hpp328 行定义.

◆ operator bool() [2/2]

atomic< bool >::operator bool ( ) const
inlinenoexcept

类型转换运算符

返回
当前值

在文件 atomic.hpp73 行定义.

引用了 atomic< T >::load().

◆ operator=()

bool atomic< bool >::operator= ( const bool value)
inlinenoexcept

赋值运算符

参数
value要设置的值
返回
设置后的值

在文件 atomic.hpp313 行定义.

◆ store()

void atomic< bool >::store ( const bool value,
const memory_order mo = memory_order_seq_cst )
inlinenoexcept

原子存储操作

参数
value要存储的值
mo内存顺序

在文件 atomic.hpp359 行定义.

引用了 memory_order_seq_cst.

◆ wait()

void atomic< bool >::wait ( const bool old,
const memory_order mo = memory_order_seq_cst ) const
inlinenoexcept

等待值改变

参数
old期望的旧值
mo内存顺序

在文件 atomic.hpp490 行定义.

引用了 memory_order_seq_cst.


该结构体的文档由以下文件生成: