话不多说直接上代码!
#include<thread>
#include<iostream>
using namespace std;
using namespace this_thread;
/*
原子操作:对变量的读写操作不可分割
atomic:模板类
atomic<int> open(0); 或 open = 0;
*/
int valut = 0;
atomic<int> a_valu = 0;
void testFunc()
{
for (int i = 0; i < 10000; i++)
{
valut++;
a_valu++;
}
}
int main()
{
thread t1(testFunc);
thread t2(testFunc);
t1.join();
t2.join();
cout << valut << endl;
cout << a_valu << endl;
return 0;
}