本月博客排行
-
第1名
kaizi1992 -
第2名
arpenker -
第3名
wy_19921005 - hanbaohong
- jh108020
年度博客排行
-
第1名
龙儿筝 -
第2名
宏天软件 -
第3名
青否云后端云 - vipbooks
- wy_19921005
- benladeng5225
- fantaxy025025
- e_e
- kaizi1992
- tanling8334
- arpenker
- sam123456gz
- javashop
- zysnba
- xiangjie88
- lemonhandsome
- wallimn
- ganxueyun
- Xeden
- xyuma
- zhanjia
- wangchen.ily
- jh108020
- johnsmith9th
- zxq_2017
- jbosscn
- forestqqqq
- daizj
- ajinn
- xpenxpen
- ranbuijj
- 喧嚣求静
- kingwell.leng
- silverend
- kristy_yy
- lchb139128
- jveqi
- lich0079
- lzyfn123
- java-007
- sunj
- yeluowuhen
- lerf
- xiaoxinye
- flashsing123
- zhangjijun
- lxguy
- bosschen
- lyndon.lin
- sunnylocus
最新文章列表
lock与lock.lockInterruptibly源码解读
f双方都
在重入锁(ReentrantLock)中,有两个相似的方法,一个是lock,一个是lockInterruptably,之前没有细看,之前我一直用的是lock,不过最近再看公司的代码时,发现有人竟然用的是后者,于是我就好奇了,特么的到底哪里不一样,于是跟了下源码,特此记录一下。(ReentrantLock使用aqs实现的,最好先看懂aqs再来搞重入锁)。
再lock中,最终调用的是:j ...
lockInterruptibly 和 lock
一.序言
ReentrantLock 锁有好几种,除了常用的lock tryLock 等意外,其中有个lockInterruptibly 用的比较少,看了下JDK 说明,官方的东西总是那么不容易理解,这里用稍微通俗的语言来描述一下。
二.栗子
1.我们用张三和李四 吃水果来描述:
如果张三吃苹果->休息5秒->吃香蕉
...
java并发编程--AbstractQueuedSynchronizer的lock()和lockInterruptibly()方法分析(五)
lock 与 lockInterruptibly比较区别在于:
lock 优先考虑获取锁,待获取锁成功后,才响应中断。
lockInterruptibly 优先考虑响应中断,而不是响应锁的普通获取或重入获取。
详细区别:
ReentrantLock.lockInterruptibly允许在等待时由其它线程调用等待线程的Thread.interrupt方法来中断等待线程的等待 ...