您的位置: 网站首页> it面试题> 当前文章
Java多线程中synchronized和ReentrantLock的区别是什么?
老董-我爱我家房产SEO2024-03-14157围观,101赞
1、锁的实现方式: synchronized是依赖于JVM实现的,而ReentrantLock是Java提供的API。
2、锁的公平性: ReentrantLock可以指定为公平锁或非公平锁,而synchronized只能是非公平锁。
3、锁的灵活性: ReentrantLock提供了更多的功能,比如可以中断等待锁的线程,获取等待锁的线程列表,还可以尝试获取锁。
4、性能: 在JDK1.6之后,synchronized的性能得到了很大优化,和ReentrantLock比较接近。
5、锁的细粒度控制: ReentrantLock可以更精确的控制锁,有更丰富的锁操作方法。

很赞哦!
python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群
相关文章
文章评论
-
Java多线程中synchronized和ReentrantLock的区别是什么?文章写得不错,值得赞赏


