04 2020 档案

摘要:前言 相信大家都挺熟悉 CountDownLatch 的,顾名思义就是一个栅栏,其主要作用是多线程环境下,让多个线程在栅栏门口等待,所有线程到齐后,栅栏打开程序继续执行。 案例 用一个最简单的案例引出我们的主角 源码分析 看源码前最好先熟悉下 AQS 的大致结构,之前有两篇文章仅供参考,大致熟悉下即 阅读全文
posted @ 2020-04-22 18:46 freshchen 阅读(264) 评论(0) 推荐(1)
摘要:前言 本文是 ReentrantLock 源码的第二篇,第一篇主要介绍了公平锁非公平锁正常的加锁解锁流程,虽然表达能力有限不知道有没有讲清楚,本着不太监的原则,本文填补下第一篇中挖的坑。 "Java读源码之ReentrantLock" 源码分析 感知中断锁 如果我们希望检测到中断后能立刻抛出异常就用 阅读全文
posted @ 2020-04-19 21:16 freshchen 阅读(460) 评论(0) 推荐(1)
摘要:前言 ReentrantLock 可重入锁,应该是除了 synchronized 关键字外用的最多的线程同步手段了,虽然JVM维护者疯狂优化 synchronized 使其已经拥有了很好的性能。但 ReentrantLock 仍有其存在价值,例如可以感知线程中断,公平锁模式,可以指定超时时间的抢锁等 阅读全文
posted @ 2020-04-07 18:47 freshchen 阅读(502) 评论(0) 推荐(0)