并发编程

volatile

2019-02-13  本文已影响0人  指尖架构141319

volatile关键字只能保证能拿到最新的变量,并不能保证线程安全。

一个线程的执行顺序:
1.加载(复制)主存数据到操作栈
2.对操作栈的数据进行修改
3.将数据写回主存中

volatile不是并发安全举例:
两个线程A、B同时修改一个int i=5,A执行i++,B同时执行i++,写回主存后都是6,但是,其实 i 执行了两次++

上一篇 下一篇

猜你喜欢

热点阅读