chenssy
致力打造Java精品博客站点

JAVA

第2页

【死磕Java并发】—-深入分析CAS

chenssy阅读(3210)评论(2)

CAS,Compare And Swap,即比较并交换。Doug lea大神在同步组件中大量使用CAS技术鬼斧神工地实现了Java多线程的并发操作。整个AQS同步组件、Atomic原子类操作等等都是以CAS实现的,甚至ConcurrentH...

【死磕Java并发】—–J.U.C之Condition

chenssy阅读(1803)评论(2)

此篇博客所有源码均来自JDK 1.8 在没有Lock之前,我们使用synchronized来控制同步,配合Object的wait()、notify()系列方法可以实现等待/通知模式。在Java SE5后,Java提供了Lock接口,相对于S...

【死磕Java并发】—–J.U.C之AQS:阻塞和唤醒线程

chenssy阅读(2288)评论(8)

此篇博客所有源码均来自JDK 1.8 在线程获取同步状态时如果获取失败,则加入CLH同步队列,通过通过自旋的方式不断获取同步状态,但是在自旋的过程中则需要判断当前线程是否需要阻塞,其主要方法在acquireQueued(): if (sho...

【死磕Java并发】—–J.U.C之AQS:CLH同步队列

chenssy阅读(4008)评论(0)

此篇博客所有源码均来自JDK 1.8 在上篇博客【死磕Java并发】—–J.U.C之AQS:AQS简介中提到了AQS内部维护着一个FIFO队列,该队列就是CLH同步队列。 CLH同步队列是一个FIFO双向队列,AQS依赖它来完成同步状态的管...

Chenssy's Blog | 致力打造个人精品博客

联系作者读书系统