synchronized
关键字和volatile
关键字是两个互补的存在,⽽不是对⽴的存在!
volatile
关键字是线程同步的轻量级实现,所以volatile
性能肯定⽐synchronized
关键字要好。但是volatile
关键字只能⽤于变量⽽synchronized
关键字可以修饰⽅法以及代码块。volatile
关键字能保证数据的可⻅性,但不能保证数据的原⼦性。synchronized
关键字两者都能保证。volatile
关键字主要⽤于解决变量在多个线程之间的可⻅性,⽽synchronized
关键字解决的是多个线程之间访问资源的同步性。
留言