atomic_flag_test_and_set_explicit函数
概要:
#include <stdatomic.h> _Bool atomic_flag_test_and_set_explicit( volatile atomic_flag *object, memory_order order);
描述:
该函数以原子方式将参数object指向的对象设置为设置状态(set state),并返回与前一个状态对应的值。该操作是个原子的读-修改-写操作。内存会受参数order值影响。当参数order值为memory_order_seq_cst时,atomic_flag_test_and_set_explicit函数与atomic_flag_test_and_set函数具有相同的语义。
参数:
volatile atomic_flag *object
指向atomic_flag类型对象的指针。
memory_order order
枚举常量,显式地指定内存顺序。
返回值:
函数返回函数调用生效前与atomic_flag类型对象的状态相对应的值。返回值true对应的是设置状态;返回值false对应的是清除状态。
范例:
|
|
输出:
number: 100000
注:使用Pelles C编译。
相关内容:
atomic_flag | 表示原子标志的结构类型。 |
ATOMIC_FLAG_INIT | 初始化atomic_flag类型对象的宏。 |
atomic_flag_test_and_set | 将atomic_flag类型对象设置为设置状态的函数。 |
atomic_flag_clear_explicit | 将atomic_flag类型对象设置为清除状态的函数。 |