
并发
文章平均质量分 76
Promise_kk
这个作者很懒,什么都没留下…
展开
-
同步器和自定义同步组件
队列同步器(AbstractQueuedSynchronizer):并发包的作者(Doug Lea)期望用它来实现大部分同步需求,即自定义同步组件,可以实现我们自己所需要的同步策略。 主要有三种模式: 1: void acquire(int arg) 独占式获取同步状态,成功则返回,失败则进入等待队列末尾(调用CAS(compareAndSetTail(Node expect,Node upd原创 2017-05-20 11:05:47 · 1325 阅读 · 0 评论 -
java并发底层实现原理
JMM模型:每个线程有一个本地内存,共享变量存储在主内存中。 Volatile:将一个变量声明为Volatile可以保证变量的可见性。即如果线程A写了一个变量的值,它可能只是写到了本地内存,而当线程B去读这个变量的时候,可能会读取不到刚刚线程A写的值。而如果将变量声明为Volatile,则可以在写的同时将本地内存中的共享变量值全部刷新到主内存中。这样线程B就可以读取到A线程写的值了。具体如下:原创 2017-05-21 22:01:35 · 347 阅读 · 0 评论 -
ConcurrentHashMap原理简介
ConcurrentHashMap在激烈的并发环境下性能优异的原因在于使用了锁分段技术,ConcurrentHashMap里面维持一个Segment数组,每个Segment就相当于一个HashMap表,每个Segment继承了ReentrantLock。每个Segment维持一个tabel,即一个HashEntry数组,每个HashEntry又是一个链表结构。Segment数组长度和table数组原创 2017-05-21 10:38:41 · 276 阅读 · 0 评论