1. 作用范围

    volatile仅作用于变量;synchronized不仅作用于变量,方法,还有类。

  2. 是否原子性

    volatile可以改变变量可见性,但不保证原子性;而synchronized不仅改变变量可见性,还保证原子性。

  3. 是否线程阻塞

    volatile不会造成线程阻塞;synchronized可能造成线程阻塞。

  4. 是否被编译器优化

    volatile标记变量不会被编译器优化;synchronized标记的变量可以被编译器优化。

自动化零件服务商 - 供应SMC,FESTO,CKD全新正品气动元件

暂无评论

none
暂无评论...