《一》两则区别(笼统的说一下先): synchronized是内置Java语言的实现。 synchronized是发生异常时,会自动地释放线程占有的锁,因此不会导致死锁的现象发生;而lock在发生异常时,如果没有主动通过unlock()去释放锁,则很可能造成死锁现象,因此使用lock时需要在finally中释放锁。 来源:博客园作者:离愁i链接:https://www.cnblogs.com/youdiaodaxue16/p/11432573.html 标签 synchronized