sychronized与ReentrantLock

  相同点:

1.可重入;两者都是同一个线程当每进入一次,锁的计数器就会自增1,如果锁的计数器下降为0时就可以释放锁。

不同点:

1.锁的实现:Synchronized是依赖于JVM实现的,而ReenTrantLock是JDK实现的

2.功能区别:便利性:很明显Synchronized的使用比较方便简洁,并且由编译器去保证锁的加锁和释放,而ReenTrantLock需要手工声明来加锁和释放锁,为了避免忘记手工释放锁造成死锁,所以最好在finally中声明释放锁。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容