不,volatile关键字不能保证原子性。volatile关键字只能保证变量的可见性,即当一个线程修改了volatile变量的值时,其他线程可以立刻看到这个修改。但是并不能保证多个线程同时对一个volatile变量进行操作时的原子性,因此在多线程环境下需要保证原子性的操作,还需要使用其他的同步机制,比如synchronized关键字或者使用原子类(Atomic类)。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读:java volatile能否保证原子性