c – 为什么不std :: atomic_is_lock_free一个静态constexpr?

前端之家收集整理的这篇文章主要介绍了c – 为什么不std :: atomic_is_lock_free一个静态constexpr?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我很困惑.如果类型只是在运行时是原子的,那么实现可能会如何知道?

解决方法

编译器可能不知道代码将运行什么cpu,并且cpu在其无锁功能方面可能会有所不同.例如,cpu可能不支持对长类型的原子操作(因此可能需要锁定),但是如果系统只有单个内核,则它们可能是原子自动的,因为它们不能被中断,并且没有其他核心与之竞争(所以没有什么特别需要,类型是锁定的).

猜你在找的C&C++相关文章