cpp code
#include <string>
#include <iostream>
#include <thread>
#include <mutex>
#include <chrono>
using namespace std;
std::mutex mutex_geral;
void call_from_thread(int tid){
for(unsigned int i=0;i<10;i++){
mutex_geral.lock();
std::cout<<"Contando:"<<i<<" na thread:"<<tid<<"\n";
mutex_geral.unlock();
std::chrono::milliseconds dura(500);
std::this_thread::sleep_for( dura );
}
std::cout << "Fim" << std::endl;
}
int main(){
thread t1(call_from_thread,1);
thread t2(call_from_thread,2);
t1.join();
t2.join();
return 0;
}