美文网首页
synchronized 和lock的区别

synchronized 和lock的区别

作者: 垂直居中的句号 | 来源:发表于2021-05-19 18:14 被阅读0次
    1. lock 是一个接口,而syncronizeds是关键字,synchronized是内置语言实现,锁基于jvm。
      2.synchronized 在遇到异常时会自动释放锁,不会出现死锁,而lock发生异常时,不会自动释放锁,需要unlock来释放锁,可能引起死锁的发生。
    2. lock 等待锁过程中可以用interrupt来等待,而synchronized 只能等待锁的释放,不能响应中断。
      4.是否知道获取锁
      lock 可以通过trylock来知道有没有获取锁,而synchronized不能
      5.lock可以提高多个线程进行读操作的效率
      6.当竞争资源非常激烈时,此时lock的性能优于sunchronized .
      7.synchronized 使用Object对象本身的wait 、notify /notifyAll 调度机制,而lock 可以使用Condition进行线程之间的调度。

    相关文章

      网友评论

          本文标题:synchronized 和lock的区别

          本文链接:https://www.haomeiwen.com/subject/kiopjltx.html