当前位置: 首页 > 图灵资讯 > java面试题> 金三银四精选java面试题-Sychronized和ReentrantLock的区别

金三银四精选java面试题-Sychronized和ReentrantLock的区别

来源:图灵教育
时间:2023-12-14 09:18:24
 

Sychronized和ReentrantLock的区别

  1. sychronized是一个关键字,ReentrantLock是一个类
  2. sychronized会自动的加锁与释放锁,ReentrantLock需要程序员手动加锁与释放锁
  3. sychronized的底层是JVM层面的锁,ReentrantLock是API层面的锁
  4. sychronized是非公平锁,ReentrantLock可以选择公平锁或非公平锁
  5. sychronized锁的是对象,锁信息保存在对象头中,ReentrantLock通过代码中int类型的state标识来标识锁的状态
  6. sychronized底层有一个锁升级的过程