用google的guava包实现一个生产消费者模型

该文介绍了如何利用Guava库构建一个生产消费者模型,包括添加maven依赖,定义容器,使用enterWhen方法确保生产不溢出,以及基于FIFO原则的添加和移除元素。文中还提到将创建多个消费者和生产者进行模拟,并计划后续补充传统的wait/notify实现方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前段时间自习到一段guava包,用它来实现一个生产消费者模型

1、导入guava的maven依赖,版本最好是20.0以上

2、创建一个容器类,定义好我们的容器属性和成员

 3、写生产方法

注意:enterwhen方法相当于加锁并判断队列长度,没有溢出便可以生产。由于队列是采用FIFO的原则,所以这里是addlast。这里的源码后期更新。。。

4、写消费的方法

注意:因为FIFO,所以这里是removeFirst。

 

5、创建多个消费者和生产者模拟生产消费

 

6、执行main方法验证

 到这里就结束了,生产消费者模型是许多框架的原理和思想,改天补上传统的wait/notice方式实现,欢迎交流。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值