每天一道面试题一synchronize和lock的区别
存在层次synchronize是关键字,存在于jvm层面上Lock是一个类锁释放synchronize是以获取锁的线程执行完同步代码,释放锁,且当线程执行异常时,jvm会主动让线程释放锁。Lock必须在finally中释放锁,当程序不正常结束容易造成死锁。锁状态synchronize无法判断锁的状态Lock可以判断锁的状态锁类型synchronize为可重入锁、不可中断、非公平锁Lock为可重如锁、可判断、公平锁(非公平也行)性能synchronize适用于少量同
复制链接