作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我很困惑。实现怎么可能只在运行时知道类型是否是原子的?
最佳答案
编译器可能不知道代码将在哪个 CPU 上运行,并且 CPU 的无锁能力可能不同。例如,CPU 可能不支持对 long
类型的原子操作(因此可能需要锁),但如果系统只有一个内核,它们可能会自动成为原子操作,因为它们不能被中断并且没有其他核心可以与之竞争(因此不需要任何特殊的东西并且类型是无锁的)。
关于c++ - 为什么 std::atomic_is_lock_free 不是静态 constexpr?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25845182/
我很困惑。实现怎么可能只在运行时知道类型是否是原子的? 最佳答案 编译器可能不知道代码将在哪个 CPU 上运行,并且 CPU 的无锁能力可能不同。例如,CPU 可能不支持对 long 类型的原子操作(
我明白 std::atomic_is_lock_free是对应于std::atomic::is_lock_free的c-style free函数. 但是这个函数的参数就像std::atomic_is_
我是一名优秀的程序员,十分优秀!