synchronized和Reentrantlock的区别
Posted rhodesis
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了synchronized和Reentrantlock的区别相关的知识,希望对你有一定的参考价值。
1、Synchronized是jvm层面的锁是由jvm实现的而ReentrantLock是Api层面的锁它需要lock()和unlock()方法来获得锁和释放锁。
2、ReentrantLock获取锁可等待中断、可作为公平锁和非公平锁而Synchronized只能阻塞的等待获取锁、只能为非公平锁。
3、ReentrantLock可以通过Condition方法绑定多个条件然后根据条件的不同分批唤醒,Synchronized只能唤醒随机一个线程或全部唤醒。
以上是关于synchronized和Reentrantlock的区别的主要内容,如果未能解决你的问题,请参考以下文章