c++11交替打印ab记录

    技术2022-07-10  142

    //#include<pthread.h> #include #include #include #include

    using namespace std; std::mutex mtx; //static long long total = 0; //pthread_mutex_t m = PTHREAD_MUTEX_INITIALIZER; //long long i = 100;; atomic_llong i {100}; int func(int){ while(1) { if(0 == i%2) { //pthread_mutex_lock(&m); lock_guardstd::mutexlck(mtx); i–; cout<<“a\n”; //pthread_mutex_unlock(&m); } if(i<=0) break; } cout<<“thread1 exit\n”; return 0; }

    int func2(int){ while(1) { if(1 == i%2) { //pthread_mutex_lock(&m); lock_guardstd::mutexlck(mtx); i–; cout<<“b\n”; //pthread_mutex_unlock(&m); } if(i<=0) break; } cout<<“thread2 exit\n”; return 0; }

    int main(){ thread t1(func, 0); thread t2(func2, 0);

    t1.join(); t2.join(); //cout<<total<<endl; return 0;

    }

    Processed: 0.011, SQL: 9