- 博客(3)
- 收藏
- 关注
原创 多线程AQS系列2 - Reentantlock源码解读
上篇的CountDownLatch可能太过简单的理论了,几乎0代码了。不太适合0开始学习的。 这篇尽量详细一些,如果太详细全是代码的文章也很难受!所以写文章还真是个技术过。 Reentantlock Reentant:百度翻译 意思是:【再进去的】 所以这个类起个名就是:可重入锁。但是synschonized也是具有可重入性,他叫啥名,他就叫synschonized。或者更准确些就是Ree...
2019-03-30 14:43:06 154
原创 java多线程-理解CAS
原子性 顾名思义,和化学领域的原子概念一样,就是不可再拆分的物质。 JVM原子性操作 JVM规定的原子性操作有8个,read、load、use、asign、store、write、lock、unlock 就是在JVM的规定下,只有这几个操作是原子性的,不会存在多线程下不安全的情况。 除此之外,无法保证! num ++操作 num++ 操作是非原子操作,虽然简单的一行代码,但是在...
2019-03-30 13:01:36 146
原创 多线程AQS系列1 - CountDownLatch原理解读
业务场景模拟: 有2个线程池A和B,各有100个线程。A的100个线程需要等到B的100个线程全部执行完毕后,才能开始计算A的任务。 流程说明:首先有一个对象:ZryCountDownLatch ZryCountDownLatch = new ZryCountDownLatch(100); 线程池B的流程: 线程池B的线程池启动任务,任务完毕后,100个线程分别执行ZryCountDownLatc...
2019-03-29 23:02:07 157
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人