Java中各种并发锁
2022-09-28 17:24:45 14 举报
AI智能生成
Java中各种并发锁
作者其他创作
大纲/内容
某个线程锁住同步资源
锁住
悲观锁
不锁住
乐观锁
多个线程共享一把锁
共享
共享锁
不共享
排它锁(独占锁、独享锁)
多个线程竞争时要排队
排队
公平锁
先尝试插队,插队失败再排队
非公平锁
一个线程中的多个流程,获取同一把锁
能
可重入锁
不能
不可重入锁
某个线程锁住同步资源失败,不阻塞
阻塞
不阻塞
自旋锁
自适应自旋锁
线程竞争同步资源是,细节流程发生变化
不锁住资源,多个线程中只有一个线程能修改资源成功,其他线程会重试
无锁
第一个线程访问加锁的资源自动获取锁,该线程每次访问不需要重复获取锁
偏向锁
多个线程竞争同步资源时,没有获取资源的线程自旋等待锁释放
轻量级锁
多个线程竞争同步资源时,没有获取资源的线程阻塞等待唤醒
重量级锁
锁再设计和锁优化
再设计
细化锁的粒度
分段锁
锁优化
将锁的作用范围扩大
锁粗化
虚拟机自动消除没有竞争的锁
锁消除
0 条评论
下一页