多线程 面试题

Lock与synchronized的区别

类别 synchronized Lock
存在层次 java的关键字,在JVM层面上 是一个类
锁的释放 1.以获取锁的现场恒执行完同步代码,释放锁.2、线程执行发生异常,jvm会让线程释放锁 在finally中必须释放锁,不然容易造成线程死锁
锁状态 无法判断 可以判断
锁类型 可重入 不可中断 非公平 可重入 可判断 可公平(两者皆可)
性能 少量同步 大量同步

猜你喜欢

转载自blog.csdn.net/weixin_42146674/article/details/89738084