C++原子操作atomic
原子操作指“不可分割的操作”,一般针对一个变量
互斥量一般针对代码段
#include <iostream>
#include <thread>
#include <atomic>
std::atomic<int> atomic;
void add()
{
for(int i = 0; i < 1000000; i++)
{
atomic++;
}
}
int main()
{
std::thread t1(add);
std::thread t2(add);
t1.join();
t2.join();
std::cout << "atomic " << atomic << std::endl;
return 0;
}
$ ./a.out
atomic 2000000