首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

atomic_flag_test_and_set

在头文件<stdatomic.h>中定义

_Bool atomic_flag_test_and_set(volatile atomic_flag * obj);

(1)

(自C11以来)

_Bool atomic_flag_test_and_set_explicit(volatile atomic_flag * obj,memory_order order);

(2)

(自C11以来)

原子上将atomic_flag指向的状态更改obj为set(true)并返回以前的值。第一个版本根据命令对内存进行访问memory_order_seq_cst,第二个版本根据内存访问内存访问order

参数是指向易失性原子标志的指针,以接受非易失性和易失性(例如内存映射I/O)原子标志的地址。

参数

obj

-

指向要修改的原子标记对象的指针

order

-

此操作的内存同步排序:所有值都是允许的

返回值

由原子标志所指的前一个值obj

参考

  • C11标准(ISO/IEC 9899:2011):
    • 7.17.8.1 atomic_flag_test_and_set函数(p: 285-286)

另请参阅

atomic_flag_clearatomic_flag_clear_explicit(C11)

将atomic_flag设置为false(函数)

| atomic_flag_test_and_set,atomic_flag_test_and_set_explicit |的C ++文档

扫码关注腾讯云开发者

领取腾讯云代金券