linux第13天 生产者与消费者
pthread_cond_t my_condition = PTHREAD_COND_INITIALIZER;
pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
// 互斥锁和条件等待 解决生产者和消费者模型
条件等待模型
//socket连接池。。。。。
pthread_mutex_lock(&mutex);
while (g_Count == 0) //while 醒来以后需要重新判断 条件g_Count是否满足,如果不满足,再次wait
{
pthread_cond_wait(&my_condition, &mutex);(解锁、等待、加锁
}
g_Count --
pthread_mutex_unlock(&mutex);
发送条件成立模型
pthread_mutex_lock(&mutex);
g_Count++;
pthread_cond_signal(&my_condition); //通知,在条件上等待的线程
pthread_mutex_unlock(&mutex);
//