admin
-
29、【死磕Java并发】—–第二十八篇J.U.C之阻塞队列:SynchronousQueue
原文出处:http://cmsblogs.com/ 『chenssy』 【注】:SynchronousQueue实现算法看的晕乎乎的,写了好久才写完,如果当中有什么错误之处,忘各位…
-
28、【死磕Java并发】—–第二十七篇J.U.C之阻塞队列:DelayQueue
原文出处:http://cmsblogs.com/ 『chenssy』 DelayQueue是一个支持延时获取元素的无界阻塞队列。里面的元素全部都是“可延期”的元素,列头的元素是最…
-
27、【死磕Java并发】—–第二十六篇J.U.C之阻塞队列:PriorityBlockingQueue
原文出处:http://cmsblogs.com/ 『chenssy』 我们知道线程Thread可以调用setPriority(int newPriority)来设置优先级的,线程…
-
26、【死磕Java并发】—–第二十五篇J.U.C之阻塞队列:ArrayBlockingQueue
原文出处:http://cmsblogs.com/ 『chenssy』 ArrayBlockingQueue,一个由数组实现的有界阻塞队列。该队列采用FIFO的原则对元素进行排序添…
-
25、【死磕Java并发】—–第二十四篇J.U.C之Copy-On-Write容器
原文出自:http://cmsblogs.com 集合在我们开发中是使用得非常多的,包括在并发环境,我们知道Map接口在高并发时可以使用ConcurrentHashMap,但是Li…
-
24、【死磕Java并发】—–第二十三篇J.U.C之Java并发容器:ConcurrentSkipListMap
原文出处http://cmsblogs.com/ 『chenssy』 到目前为止,我们在Java世界里看到了两种实现key-value的数据结构:Hash、TreeMap,这两种数…
-
23、【死磕Java并发】—–第二十二篇J.U.C之Java并发容器:ConcurrentLinkedQueue
原文出处http://cmsblogs.com/ 『chenssy』 要实现一个线程安全的队列有两种方式:阻塞和非阻塞。阻塞队列无非就是锁的应用,而非阻塞则是CAS算法的应用。下面…
-
22、【死磕Java并发】—–第二十一篇J.U.C之ConcurrentHashMap红黑树转换分析
原文出处http://cmsblogs.com/ 『chenssy 在【死磕Java并发】—–J.U.C之Java并发容器:ConcurrentHashMa…
-
21、【死磕Java并发】—–第二十篇J.U.C之Java并发容器:ConcurrentHashMap
原文出自:http://cmsblogs.com 此篇博客所有源码均来自JDK 1.8 HashMap是我们用得非常频繁的一个集合,但是由于它是非线程安全的,在多线程环境下,put…
-
20、【死磕Java并发】—–第十九篇J.U.C之并发工具类:Exchanger
原文出处:http://cmsblogs.com/ 『chenssy』 此篇博客所有源码均来自JDK 1.8 前面三篇博客分别介绍了CyclicBarrier、CountDownL…
-
19、【死磕Java并发】—–第十八篇J.U.C之并发工具类:Semaphore
原文出处:http://cmsblogs.com/ 『chenssy』 此篇博客所有源码均来自JDK 1.8 信号量Semaphore是一个控制访问多个共享资源的计数器,和Coun…
-
18、【死磕Java并发】—–第十七篇J.U.C之并发工具类:CountDownLatch
原文出处:http://cmsblogs.com/ 『chenssy』 此篇博客所有源码均来自JDK 1.8 在上篇博客中介绍了Java四大并发工具一直的CyclicBarrier…
-
17、【死磕Java并发】—–第十六篇J.U.C之并发工具类:CyclicBarrier
原文出处:http://cmsblogs.com/ 『chenssy』 此篇博客所有源码均来自JDK 1.8 CyclicBarrier,一个同步辅助类,在API中是这么介绍的: …
-
16、【死磕Java并发】—–第十五篇J.U.C之深入分析CAS
原文出处:http://cmsblogs.com/ 『chenssy』 CAS,Compare And Swap,即比较并交换。Doug lea大神在同步组件中大量使用CAS技术鬼…
-
15、【死磕Java并发】—–第十四篇J.U.C之Condition
原文出处:http://cmsblogs.com/ 『chenssy』 此篇博客所有源码均来自JDK 1.8 在没有Lock之前,我们使用synchronized来控制同步,配合O…
-
14、【死磕Java并发】—–第十三篇J.U.C之读写锁:ReentrantReadWriteLock
原文出处:http://cmsblogs.com/ 『chenssy』 此篇博客所有源码均来自JDK 1.8 重入锁ReentrantLock是排他锁,排他锁在同一时刻仅有一个线程…
-
13、【死磕Java并发】—–第十二篇J.U.C之重入锁:ReentrantLock
原文出处:http://cmsblogs.com/ 『chenssy』 此篇博客所有源码均来自JDK 1.8 ReentrantLock,可重入锁,是一种递归无阻塞的同步机制。它可…
-
12、【死磕Java并发】—–第十一篇J.U.C之AQS:阻塞和唤醒线程
原文出处:http://cmsblogs.com/ 『chenssy』 在线程获取同步状态时如果获取失败,则加入CLH同步队列,通过通过自旋的方式不断获取同步状态,但是在自旋的过程…
-
11、【死磕Java并发】—–第十篇J.U.C之AQS:同步状态的获取与释放
原文出处:http://cmsblogs.com/ 『chenssy』 在前面提到过,AQS是构建Java同步组件的基础,我们期待它能够成为实现大部分同步需求的基础。AQS的设计模…
-
10、【死磕Java并发】—–第九篇J.U.C之AQS:CLH同步队列
原文出处:http://cmsblogs.com/ 『chenssy』 在上篇博客【死磕Java并发】—–J.U.C之AQS:AQS简介中提到了AQS内部维…