技术栈

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开发
相关推荐
P***8439
3 分钟前
SpringBoot详解
java·spring boot·后端
guslegend
10 分钟前
第2章:Linux服务器-Docker安装
java
5***2622
11 分钟前
【SpringBoot】SpringBoot中分页插件(PageHelper)的使用
java·spring boot·后端
DanB24
22 分钟前
Java(多线程)
java·开发语言·python
O***p604
27 分钟前
Java在分布式中的Archaius
java·开发语言·分布式
在繁华处
29 分钟前
JAVA实战:文件管理系统1.0
java·开发语言·前端
算法与编程之美
30 分钟前
Java数组动态扩容
java·开发语言·python·算法
曹牧
1 小时前
Java: Json的键值双引号
java·chrome·json
有一个好名字
1 小时前
Spring AI ——Java开发者的AI集成神器
java·人工智能·spring
i***6832
1 小时前
Spring Boot--@PathVariable、@RequestParam、@RequestBody
java·spring boot·后端
热门推荐
01GitHub 镜像站点02UV安装并设置国内源03BongoCat - 跨平台键盘猫动画工具04安娜的档案(Anna’s Archive) 镜像网站/国内最新可访问入口(持续更新)05Linux下V2Ray安装配置指南06【保姆级教程】免费使用Gemini3的5种方法!免翻墙/国内直连07本地部署阿里最新开源的Z-Image0846个Nano-banana 精选提示词,持续更新中09Meta第三代“分割一切”模型——SAM 3本地部署教程:首支持文本提示分割,400万概念、30毫秒响应,检测分割追踪一网打尽10Labelme从安装到标注:零基础完整指南