#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;
}