- synchronized可以作用于变量、实例方法、静态方法,volatile只作用于变量。
- 同一时刻只有一个线程能进入synchronized作用的代码,其他线程会阻塞。volatile不会阻塞。
- synchronized能保证原子性、可见性、顺序性。volatile能保证可见性、一定程度的顺序性,不能保证原子性。
- synchronized作用的代码可以被编译器、处理器优化。volatile禁止指令重排序。
synchronized、volatile的区别
阅读 127
2022-01-31
相关推荐
精彩评论(0)