concurrent包

2018-11-12 06:54:13来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

 concurrent在哪儿:jdk\jre\lib\rt.jar

本文从特性、分类、扩展方面一一道来。

1 特性

2 分类

2.1 Atomic包

包下实现了原子操作,见本作者已有博文。

原子操作核心思想是CAS(compare and swap)比较并操作,然后调用底层操作系统指令来完成。

原子操作有对基本数据类型boolean、Integer、Long操作,对数组操作,对对象引用操作,对volatile字段原子操作。

2.2 Lock包

公平锁

非公平锁

 

2.3 其他

BlockingQueue

CancellationException  

ConcurrentHashMap

CopyOnWriteArrayList和CopyOnWriteArraySet

 

 

CountDownLatch一个同步辅助类,等待正在其他线程中执行操作,并不是线程间的相互等待。

CyclicBarrier一个同步辅助类,容许一组线程相互等待,直到这组线程达到某个公共的屏障点。

Executor

TimeUnit,其内部的sleep用Thread.sleep实现,可以设置时间单位,可用性更好些。

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:撩课-Java每天10道面试题第3天

下一篇:Hadoop集群管理