91名师指路-头部
91名师指路

java 公平锁和非公平锁

由于某些原因,现在不支持支付宝支付,如需要购买源码请加博主微信进行购买,微信号:13248254750

公平锁:

就是很公平,在并发环境中,每个线程在获取锁时,会先查看此锁维护的等待队列,如果为空或者当前线程是等待队列的第一个,就占有锁,否则就会加入到等待队列中,以后会按照FIFO(先进先出)的规则从队列中取到自己。


非公平锁:

非公平锁比较粗暴,上来就直接尝试占有锁,如果尝试失败,就在采用类似公平锁的那种方式。


非公平锁的优点:吞吐量比公平锁大。


备注:

(1)并发包ReentrantLock的创建可以通过指定构造函数的boolean类型来得到公平锁和非公平锁,默认是非公平锁。

(2)synchronized 也是非公平锁。


2019-11-26 19:43:20     阅读(709)

名师出品,必属精品    https://www.91mszl.com

联系博主    
用户登录遮罩层
x

账号登录

91名师指路-底部