atomic_int是一种C++11标准库提供的原子类型,它能够保证在多线程环境下的原子性操作。而int则是一个普通的整型变量,不具备原子性操作的能力。
下面是一个示例代码,展示了atomic_int和int的区别:
#include
int main() { int i = 0; //普通整型变量 std::atomic_int atom_i(0);//原子类型变量
i++; //此处的i++不具备原子性操作 atom_i++; //此处的atom_i++是具备原子性操作的
}
上一篇:atomic_inc_return()函数能保证返回值的原子性吗?
下一篇:atomic_thread_fence(acquire)能否防止其之前的loads被重新排序到之后?