《深入理解Java虚拟机》:线程安全,两种同步锁实现( 二 )

  • 通过Lock可以知道有没有成功获取锁 , 而synchronized无法得知获得锁情况;
  • Lock可以提高多个线程进行读操作的效率 , 既就是实现读写锁等 。
  • 通过以上对比 , ReentrantLock可能更加灵活一些 , 但是从性能考虑 , JDK1.6以后对synchronized做了很多优化锁 , 实际中还是提倡synchronized来进行同步 。
    下一节分享虚拟机对synchronized的锁优化 。
    内容来源于《深入理解Java虚拟机》第十三章13.2节内容 。
    #程序员##JVM#