文章目录 模型条件变量信号量(信号灯)应用伪代码 模型 生产者、消费者用线程 容器用链表 条件变量 条件变量不是锁,可以控制线程阻塞与否,可以配合锁使用。 注意:当pthread_cond_wait(&cond, &mutex)使用时,会阻塞在这,并对互斥锁解锁,当拿到条件后,立即上锁并结束阻塞。其余线程执行pthread_cond_signal(&cond)就会唤醒等待,使其停止阻塞。 信号量(信号灯) 用于阻塞线程,但不能保证共享资源的安全,要保证安全还得用互斥锁。 应用伪代码