美文网首页
锁比较 关键字比较

锁比较 关键字比较

作者: 秋笙fine | 来源:发表于2019-02-18 21:58 被阅读0次

    volatile与synchronized区别:
    volatile不会进行加锁操作。因此也不会使执行线程阻塞,因此volatile是一种比sunchronized关键字更加轻量级的同步机制。
    volatile适用于一写多读的场景。只保存内存的可见性,不保证原子性(JMM模型+内存屏障,每一次读操作前,都会进行刷新,确保读取到的数据是主存中最新的值,read->load操作中无法保证安全,所以不保证原子性)。sycnhronized(加锁机制)保证了原子性和可见性。

    ReentrantLock与synchronized区别?
    可重入锁与synchronized锁区别?


    image.png

    synchronized改版后是可重入锁,修饰代码块和普通方法获取的是对象锁(即内置的monitor锁),修饰静态方法获取的是.class的类锁。

    相关文章

      网友评论

          本文标题:锁比较 关键字比较

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