0
点赞
收藏
分享

微信扫一扫

synchronized、volatile的区别

凌得涂 2022-01-31 阅读 127
  1. synchronized可以作用于变量、实例方法、静态方法,volatile只作用于变量。
  2. 同一时刻只有一个线程能进入synchronized作用的代码,其他线程会阻塞。volatile不会阻塞。
  3. synchronized能保证原子性、可见性、顺序性。volatile能保证可见性、一定程度的顺序性,不能保证原子性。
  4. synchronized作用的代码可以被编译器、处理器优化。volatile禁止指令重排序。
举报

相关推荐

0 条评论