跳到主要内容

synchronized & ReentrantLock 区别

· 阅读需 1 分钟
flankx
类别synchronizedReentrantLock
存在层次Java的关键字,JVM层面是一个类
锁的释放1.以获取锁的线程执行同步代码,释放锁 2.线程执行发生一次,JVM会让线程释放锁在finally中必须释放锁,不然容易造成线程死锁
锁的获取加锁A线程获得锁,B线程等待,如果A阻塞,B线程会一直等待分情况而定,Lock有多种锁的获取方式 condition
锁状态无法判断可以判断
锁类型可重入,不可判断,非公平可重入,可判断,可公平
性能少量同步大量同步