技术栈

ReentrantLock中的Condition的用法

zfoo-framework2023-08-06 18:02

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

1.例子1

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

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

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

2.例子2

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

上一篇:OpenCV之信用卡识别实战
下一篇:Python 2.x 中如何使用flask模块进行Web开发
相关推荐
一灯架构
1 天前
90%的人答错!一文带你彻底搞懂ArrayList
java·后端
Y409001
1 天前
【多线程】线程安全(1)
java·开发语言·jvm
布局呆星
1 天前
SpringBoot 基础入门
java·spring boot·spring
风吹迎面入袖凉
1 天前
【Redis】Redisson的可重入锁原理
java·redis
w610010466
1 天前
cka-2026-ConfigMap
java·linux·cka·configmap
语戚
1 天前
力扣 968. 监控二叉树 —— 贪心 & 树形 DP 双解法递归 + 非递归全解(Java 实现)
java·算法·leetcode·贪心算法·动态规划·力扣·树
quxuexi
1 天前
网络通信安全与可靠传输:从加密到认证,从状态码到可靠传输
java·安全·web
hrhcode
1 天前
【java工程师快速上手go】二.Go进阶特性
java·golang·go
小碗羊肉
1 天前
【从零开始学Java | 第三十一篇下】Stream流
java·开发语言
热门推荐
012026年4月技术前沿:AI大模型爆发、智能体革命与量子安全新纪元02GitHub 镜像站点03一周AI热点速览(2026.03.31-04.06):GPT-6曝光、谷歌开源Gemma 4、资本狂飙与模型军备竞赛04基于 Docker 部署 Hermes Agent 并接入飞书机器人的完整指南05GPT-6核心能力解析及与现有主流大模型对比06免费!不限量!用opencode接入英伟达(NVIDIA)大模型,轻松打造你的 AI 编程助手07零成本!Ollama本地部署国产大模型全指南(支持Kimi-K2.5/GLM-5/Qwen,新手秒上手)08从限购到畅通:GLM-5.1 Coding Plan接入攻略09CodeBuddy与WorkBuddy深度对比:腾讯两款AI工具差异及实操指南10LLM Wiki:让大模型替你打理知识库的完整指南