#include <iostream>
#include <thread>
#include <atomic>
std::atomic<int> sum {0};
void func(int arg) {
for (int i = 1; i<=5; i++) {
sum.fetch_add(i);
}
std::cout<<arg<<","<<sum.load()<<std::endl;
}
int main(){
std::thread ts[2];
ts[0] = std::thread(func, 0);
ts[1] = std::thread([&](int arg){
for (int i = 1; i<=5;i++) {
sum += i;
}
std::cout<<arg<<","<<sum.load()<<std::endl;
}, 1);
ts[0].join();
ts[1].join();
std::cout<<"sum:"<<sum.load()<<std::endl;
}
c++ atomic
最新推荐文章于 2025-07-12 10:15:28 发布
由于博客内容为空,无法提取关键信息生成摘要。
8976

被折叠的 条评论
为什么被折叠?



