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

相关推荐
z落落2 分钟前
C# 多接口实现、重名成员、显式实现、接口继承+抽象类和接口区别
java·开发语言·c#
C137的本贾尼10 分钟前
【实战】分析一张真实业务表的 InnoDB 存储结构
java·大数据·数据库
超梦dasgg11 分钟前
亿级数据 不停服务平滑迁移(生产环境实战方案)
java·数据库
Zella折耳根13 分钟前
Java 正则表达式实战:IP 地址匹配与替换全解析
java·tcp/ip·正则表达式
摇滚侠13 分钟前
JavaWeb 全套教程 Filter 107-111
java·开发语言·servlet
YIN_尹16 分钟前
【Linux系统编程】基础IO第一讲——系统文件IO
android·java·linux·c++
凤山老林16 分钟前
81-Java Scanner 类
java·开发语言
linge_sun19 分钟前
Sping AI 使用 Ollama 快速搭建本地知识库
java·人工智能·ai编程
沐苏瑶19 分钟前
深入浅出 Java 文件操作与 IO:从文件系统到数据流实战
java·开发语言
唐青枫25 分钟前
Java MyBatis-Plus 实战指南:用 BaseMapper、Wrapper 和分页写好数据层
java·mybatis