Advertisement

C++线程6-notify_one

阅读量:

生产者消费者模型的初始实现版本

复制代码
 std::deque<int> q;

    
 std::mutex mu;
    
  
    
 void function_1(LogFile& log)
    
 {
    
 	int count = 10;
    
 	while (count > 0) {
    
 		std::unique_lock<mutex> locker(mu);
    
 		q.push_front(count);
    
 		locker.unlock();
    
 		std::this_thread::sleep_for(chrono::seconds(1));
    
 		count--;
    
 	}
    
 }
    
  
    
 void function_2() {
    
 	int data = 0;
    
 	while (data != 1) {
    
 		std::unique_lock<mutex> locker(mu);
    
 		if (!q.empty()

全部评论 (0)

还没有任何评论哟~