synchronized和Lock的区别说明
下文笔者讲述synchronized和Lock的不同之处,如下所示
synchronized和Lock简介
两者都是加锁中常用的方法,但是她们之间有很多本质的不同 下文笔者将一一道来,如下所示
synchronized和Lock区别
区别1:所属不同 synchronized是Java关键字 Lock是Java接口 区别2:可加锁对象不同 synchronized可给方法、代码块加锁 lock只能给代码块加锁 区别3:代码的处理方式不同 synchronized不需要手动获取锁和释放锁 使用简单,发生异常会自动释放锁,不会造成死锁 lock需要自己加锁和释放锁 如果使用不当没有unLock()去释放锁可能造成死锁 区别4:获取锁状态 synchronized无法获取锁状态 Lock可查看是否加锁成功及锁状态
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。