Java:volatile的作用

来源:互联网 发布:artrage mac破解 编辑:程序博客网 时间:2024/05/21 11:19

谈及volatile作用是,我们首先要了解,Java的缓存。

在Java编程中,有时为了提高运行效率,编译器会自动对其进行优化,把经常被访问的变量缓存起来,程序在读取这个变量时,有可能直接从缓存中读取,而不是从内存中读取。但也有一个缺点,就是在多线程编程中,变量的值可能因别的线程而发生变化,但缓存中的 值却为发生变化,从而导致,读取不一致。

  为了解决这个问题,volatile应运而生。

volatile是一个类型修饰符,被用来设计为修饰被不同线程访问和修改的变量。被volatile定义的变量,系统每次用它时,都是直接从对应的内存中提取,而不会利用缓存。

原创粉丝点击