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也有提供超时的方法。

相关推荐
减瓦3 分钟前
源码视图技术:集 APT 和 AST 所长
java·project lombok
兰令水14 分钟前
hot100【acm版】【2026.7.21打卡-java版本】
java·开发语言·算法·leetcode·面试
IT_Octopus15 分钟前
一次由 RestTemplate 引发的 Connection reset:被 XML 截胡的请求体
xml·java·spring boot
云烟成雨TD17 分钟前
Micrometer 系列【2】可观测性:指标(Metrics)
java·云原生·micrometer
2501_9142459324 分钟前
Java应用性能调优与生产监控部署:2026年实战手册
java·开发语言
吴声子夜歌27 分钟前
MongoDB 4.x——微服务入门
java·mongodb·微服务
好好沉淀41 分钟前
主键选择(自增 vs UUID vs 雪花算法)
java·算法
带刺的坐椅1 小时前
Solon AI:Tool 与 Talent 怎么选?从函数到领域专家
java·ai·llm·agent·solon
小白说大模型1 小时前
AI Agent 调试实战:链路追踪、Prompt 可视化与异常定位的系统方法
java·人工智能·python·算法·prompt