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

相关推荐
悟空码字2 分钟前
【保姆级】实现APP分享至微信,看完就能落地
java·后端·微信
常利兵4 分钟前
Android 开发探秘:View.post()为何能获取View宽高
java·数据库·sql
闭关苦炼内功4 分钟前
使用Java语言实现二分查找
java·开发语言
毕设源码-郭学长6 分钟前
【开题答辩全过程】以 基于Spring Boot“活力青春”健身房管理系统的设计与实现为例,包含答辩的问题和答案
java·spring boot·后端
m0_475064508 分钟前
Spring AI RAG简易demo
java·人工智能·spring
xht08328 分钟前
PHP vs C++:编程语言终极对决
java·开发语言
少司府9 分钟前
C++基础入门:第一个C++程序
java·c语言·开发语言·c++·ide
液态不合群12 分钟前
一文学习 Spring 声明式事务源码全流程总结
java·学习·spring
毕设源码-钟学长18 分钟前
【开题答辩全过程】以 基于SpringBoot的校园快递APP系统的设计与实现为例,包含答辩的问题和答案
java·spring boot·后端
星辰_mya24 分钟前
CGLIB 深度解剖:字节码生成的“克隆人”艺术
java·开发语言·面试