技术栈

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开发
相关推荐
pjw19880903
1 天前
Spring Framework 中文官方文档
java·后端·spring
jgyzl
1 天前
2026.3.11MyBatis-Plus基本使用与思考
java·数据库·mybatis
Full Stack Developme
1 天前
Java 常用通信协议及对应的框架
java·开发语言
( •̀∀•́ )920
1 天前
Spring Boot 启动报错 `BindException: Permission denied`
java·spring boot·后端
杰克尼
1 天前
苍穹外卖--day10
java·数据库·spring boot·mybatis·notepad++
sjmaysee
1 天前
Windows操作系统部署Tomcat详细讲解
java·windows·tomcat
1.14(java)
1 天前
Spring-boot快速上手
java·开发语言·javaee
Darkdreams
1 天前
SpringBoot项目集成ONLYOFFICE
java·spring boot·后端
lhbian
1 天前
【Spring Cloud Alibaba】基于Spring Boot 3.x 搭建教程
java·spring boot·后端
代码雕刻家
1 天前
3.6.Maven-依赖管理-依赖范围
java·maven
热门推荐
01GitHub 镜像站点02Qwen3.5 开源全解析:从 0.8B 到 397B,代际升级 + 全场景选型指南03OpenClaw 使用和管理 MCP 完全指南04UV安装并设置国内源05OpenClaw Control UI安全上下文访问配置06本地部署 OpenClaw + DeepSeek-R1 完全指南07OpenClaw macOS 完整安装与本地模型配置教程(实战版)08Claude Code + GLM4.7 避坑指南:解决 Unable to connect to Anthropic services09小黑课堂计算机二级WPSoffice题库软件下载安装教程(2026年3月最新版)10让 Trae IDE 智能体 “读懂”文档 Excel+PDF+DOCX :mcp-documents-reader 工具使用指南