简单对比java可重入锁ReentrantLock和同步关键字synchronized

底层实现:

        可重入锁: jdk层面AQS,CAS   

       同步关键字 : jvm层面 monitorEnter out 性能稍差



使用层面:

        可重入锁: 扩展功能多,非阻塞,超时时间获取,可中断,读写锁,公平锁,非公平锁,条件对象。 

        同步关键字: 应用单一,阻塞时间不可控,JDK5之前性能较差



锁释放:

       可重入锁:手动释放  

       同步关键字 :jvm内部monitor释放

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