已解决
C++(11):原子类型的is_lock_free/is_always_lock_free
来自网友在路上 11128112提问 提问时间:2023-11-22 19:50:22阅读次数: 112
最佳答案 问答题库1128位专家为你答疑解惑
原子类型提供了一个成员函数is_lock_free,用于指示该原子类型是不是以无锁方式实现的:
#include <iostream>
#include <atomic>
using namespace std;int main(){cout<<atomic_char().is_lock_free()<<endl;cout<<atomic_int().is_lock_free()<<endl;return 0;
}运行程序输出:
1
1
同时原子类型提供了一个编译器常量静态成员is_always_lock_free
static constexpr bool is_always_lock_free
用于指示,该原子类型是不是总是以无锁方式实现的。
#include <iostream>
#include <atomic>
using namespace std;int main(){cout<<atomic_char::is_always_lock_free<<endl;cout<<atomic_int::is_always_lock_free<<endl;return 0;
}运行程序输出:
1
1
需要注意的是由于is_always_lock_free是编译期常量,所以只有当所有的平台上都是以无锁方式实现的原子操作时才会返回true。
查看全文
99%的人还看了
相似问题
- C++(11):原子类型的is_lock_free/is_always_lock_free
- UnoCss(原子化css引擎) 让你的开发更轻松愉快
- GoLong的学习之路(二十三)进阶,语法之并发(go最重要的特点)(锁,sync包,原子操作)
- (二)正点原子I.MX6ULL u-boot移植
- 基于DevEco Studio的OpenHarmony应用原子化服务(元服务)入门教程
- 正点原子嵌入式linux驱动开发——Linux WIFI驱动
- springboot整合redis+lua实现getdel操作保证原子性
- HarmonyOS鸿蒙原生应用开发设计- 元服务(原子化服务)图标
- 正点原子嵌入式linux驱动开发——Linux 音频驱动
- 正点原子嵌入式linux驱动开发——Linux CAN驱动
猜你感兴趣
版权申明
本文"C++(11):原子类型的is_lock_free/is_always_lock_free":http://eshow365.cn/6-41918-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!