原子函数在一个简单的指令中执行。他们不能在中游被打断.如果同时请求两个操作,则必须在第二个操作进行之前完成。它从不睡觉。在十五级管道处理器上,如何确定原子功能的原子执行?原子操作对性能有不良影响吗?Linux具有多个原子函数,作为一条指令具有以下类型: volatile int counter;它的定义就像SMP-安全。有可能在超标量上使用SMP安全原子吗?
对于我对在Windows x64上使用原子互锁操作不感兴趣的类型,是否有可能诱使std::atomic输出CMPXCHG16B,或者我只是必须接受它并手动执行原子操作吗?我可以让GCC/Clang在Linux上做到这一点,所以我怀疑这只是Microsoft标准库的一个问题。.); // This has a lock on Windows, not on Linux version of code