经典同步问题之生产者消费者问题
本文来自个人博客: https://dunkwan.cn 文章目录 Classic Problem of Synchronization(经典同步问题) The Bounded-Buffer Problem(有限缓冲问题) The Producer-Consumer Problem(生产者消费者问题) The Buffer The Producer and Consumer Threads Pthreads Thread Creation and Synchronization Classic Problem of Synchronization(经典同步问题) 在这个部分,我们要讲述大量同步问题,像一大类并发控制问题的例子。对于测试几乎每一个最新提出的同步主题,这些问题都有被用到。在我们的这类问题的解决方案中,因为同步信号量是一种解决该问题的传统方式,所以我们使用同步信号量。然而,这些解决方案的具体实现可能在二元信号量的地方使用互斥锁。 while ( true ) { . . . /* produce an item an next_produced */ . . . wait ( empty ) ; wait ( mutex ) ; . . . /* add next_produced to the buffer */ . . . signal ( mutex ) ;