会员
周边
众包
新闻
博问
闪存
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式
...
退出登录
注册
登录
五色风车
Powered by
博客园
博客园
|
首页
|
新随笔
|
联系
|
订阅
|
管理
2020年1月5日
AbstractQueuedSynchronizer(AQS) 超详细原理解析
摘要: java.util.concurrent包中很多类都依赖于这个类AbstractQueuedSynchronizer所提供的队列式的同步器,比如说常用的ReentranLock,Semaphore和CountDownLatch等. 为了方便理解,我们以一段使用ReentranLock的代码为例,讲解
阅读全文
posted @ 2020-01-05 22:37 五色风车
阅读(445)
评论(0)
推荐(0)
编辑
synchronized(三) 锁的膨胀过程(锁的升级过程)深入剖析
摘要: 锁为何存在: 因为在并发情况为了保证线程的安全性,是在一个多线程环境下正确性的概念,也就是保证多线程环境下共享的、可修改的状态的正确性(这里的状态指的是程序里的数据),在java程序中我们可以使用synchronized关键字来对程序进行加锁。 当声明synchronized代码块的时候,编译成的字
阅读全文
posted @ 2020-01-05 17:15 五色风车
阅读(1018)
评论(0)
推荐(0)
编辑
synchronized锁机制的实现原理
摘要: Synchronized 锁机制的实现原理 Synchronized是Java种用于进行同步的关键字,synchronized的底层使用的是锁机制实现的同步。在Java中的每一个对象都可以作为锁。 Java中synchronized的两个特性: 互斥性:即在同一时间内只允许同一个县城持有某一个对象锁
阅读全文
posted @ 2020-01-05 16:05 五色风车
阅读(2401)
评论(0)
推荐(0)
编辑
happen-before原则
摘要: 单线程happen-before原则: 在同一个线程中,书写在前面的操作happen-before后面的操作。 锁的happen-before原则: 同一个锁的unlock操作happen-before此锁的lock操作。 volatile的happen-before原则: 对一个volatile变
阅读全文
posted @ 2020-01-05 10:49 五色风车
阅读(212)
评论(0)
推荐(0)
编辑