0
点赞
收藏
分享

微信扫一扫

第14章 多线程(18)读写锁、乐观锁、悲观锁、公平锁、非公平锁


第14章 多线程(18)读写锁、乐观锁、悲观锁、公平锁、非公平锁_java

 

第14章 多线程(18)读写锁、乐观锁、悲观锁、公平锁、非公平锁_linq_02

 读写锁

读锁:只对读取进行锁定

写锁:只对写入进行锁定

第14章 多线程(18)读写锁、乐观锁、悲观锁、公平锁、非公平锁_悲观锁_03

 乐观锁

冲突较少的时候,适合用乐观锁。认为大概率不会产生冲突,不断的尝试获取锁,前面提到的CAS自旋锁,就是一种乐观锁

第14章 多线程(18)读写锁、乐观锁、悲观锁、公平锁、非公平锁_乐观锁_04

 悲观锁

冲突较多的时候,适合用悲观锁。无论是否产生冲突,都要前一个线程释放以后,后面的线程才会获取锁

第14章 多线程(18)读写锁、乐观锁、悲观锁、公平锁、非公平锁_p2p_05

 公平锁

按照请求顺序获取锁,先请求的线程可以先获得锁

第14章 多线程(18)读写锁、乐观锁、悲观锁、公平锁、非公平锁_linq_06

 非公平锁

前一个线程释放锁后,所有线程一起争夺锁

相关内容:选择 《Java核心技术 卷1》查找相关笔记

评论🌹点赞👍收藏✨关注👀,是送给作者最好的礼物,愿我们共同学习,一起进步

公众号 钰娘娘知识汇总 

举报

相关推荐

0 条评论