ReentrantLock中的Condition的用法

其实Condition或者说wait和notify/notifyAll,我们是在阻塞队列中经常使用。

1.例子1

生产者消费者模式嘛,一个线程生成数据,有了数据后,通知其它线程取。

也就是await方法,是位于lock之间。

复制代码
lock.lock()
while(queue.empty()){
    condition.await();
}
lock.unlock()

2.例子2

在rpc中,我们也可以用这个await来搞。 当然了还有CountDownLatch或者CompletableFuture也有提供超时的方法。

相关推荐
java修仙传几秒前
Java 实习日记:一次 Excel 导入校验 Bug 的定位与数据更新逻辑优化
java·数据库·bug·excel·后端开发
稽稽稽稽不如人3 分钟前
《从零开始的java从入门到入土的学习生活——Java后端篇》Chapter21——Java后端篇学习记录——Redis初步入门
java·学习·生活
ID_180079054736 分钟前
淘宝店铺所有商品 API 接口:核心能力与数据返回参考
java·服务器·前端
轻刀快马19 分钟前
浅聊Java反射
java·开发语言
Gerardisite19 分钟前
企业微信智能客服开发实战:API自动回复指南
java·开发语言·python·机器人·企业微信
要开心吖ZSH21 分钟前
零基础入门 Spring WebFlux 与 Project Reactor:从小白到顿悟
java·响应式编程·spring webflux
智塑未来21 分钟前
装备制造行业设计制造一体化痛点攻克与实战经验总结
java·开发语言·制造
Devin~Y27 分钟前
电商AIGC智能客服面试:JVM调优、Spring Cloud微服务、Redis缓存、Kafka消息、K8s观测与RAG落地
java·jvm·spring boot·redis·spring cloud·kafka·kubernetes
Ai马猴子29 分钟前
企业定制专属模型,gpt-5.4-cdx高效适配,DMXAPI 安全合规
java·gpt·安全
星晨羽33 分钟前
Java通过FTP协议实现文件上传下载
java·开发语言