生产者消费者模式 在实际的软件开发过程中,经常碰到一个场景:某个模块负责产生数据,这些数据由另一个模块负责处理。 产生数据的模块称为生产者,处理数据的模块称为消费者。 在生产者和消费者之间有个中介,称为缓冲区。 缓冲区的作用: (1)解耦:使生产者和消费者之间不形成直接依赖,耦合降低; (2)并发:生产者和消费者成为两个并发独立主体。生产者将数据丢至缓冲区,就去生产下一个数据,不依赖消费者的处理速度。 (3)支持忙闲不均。