ITPub博客

首页 > 应用开发 > Java > Java volatile 类型修饰 摘

Java volatile 类型修饰 摘

原创 Java 作者:fanfan6621 时间:2007-10-10 12:05:59 0 删除 编辑
我们知道,在Java中设置变量值的操作,除了long和double类型的变量外都是原子操作,也就是说,对于变量值的简单读写操作没有必要进行同步。这在JVM 1.2之前,Java的内存模型实现总是从主存读取变量,是不需要进行特别的注意的。而随着JVM的成熟和优化,现在在多线程环境下volatile关键字的使用变得非常重要。在当前的Java内存模型下,线程可以把变量保存在本地内存(比如机器的寄存器)中,而不是直接在主存中进行读写。这就可能造成一个线程在主存中修改了一个变量的值,而另外一个线程还继续使用它在寄存器中的变量值的拷贝,造成数据的不一致。要解决这个问题,只需要像在本程序中的这样,把该变量声明为volatile(不稳定的)即可,这就指示JVM,这个变量是不稳定的,每次使用它都到主存中进行读取。一般说来,多任务环境下各任务间共享的标志都应该加volatile修饰。[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/195547/viewspace-975597/,如需转载,请注明出处,否则将追究法律责任。

上一篇: AWT
下一篇: 没有了~
请登录后发表评论 登录
全部评论
  • 博文量
    2
  • 访问量
    428487

最新文章