volatile 有什么作用?

 

  • 「1.保证内存可见性」

    • 可见性是指线程之间的可见性,一个线程修改的状态对另一个线程是可见的。也就是一个线程修改的结果,另一个线程马上就能看到。

    •  

  • 「2.禁止指令重排序」

    • cpu 是和缓存做交互的,但是由于 cpu 运行效率太高,所以会不等待当前命令返回结果从而继续执行下一个命令,就会有乱序执行的情况发生

posted @ 2023-03-31 00:15  CodeWhisperer001  阅读(10)  评论(0编辑  收藏  举报