volatile关键字简介
2009-09-30 17:17
127 查看
volatile的解释为“直接存取原始内存地址”,编译器对访问该变量的代码就不再进行优化,从而可以提供对特殊地址的稳定访问。
一般说来,volatile用在如下的几个地方:
1、中断服务程序中修改的供其它程序检测的变量需要加volatile;
2、多任务环境下各任务间共享的标志应该加volatile;
3、存储器映射的硬件寄存器通常也要加volatile说明,因为每次对它的读写都可能由不同意义;
另外,以上这几种情况经常还要同时考虑数据的完整性(相互关联的几个标志读了一半被打断了重写),在1中可以通过关中断来实
现,2中可以禁止任务调度,3中则只能依靠硬件的良好设计了。
一般说来,volatile用在如下的几个地方:
1、中断服务程序中修改的供其它程序检测的变量需要加volatile;
2、多任务环境下各任务间共享的标志应该加volatile;
3、存储器映射的硬件寄存器通常也要加volatile说明,因为每次对它的读写都可能由不同意义;
另外,以上这几种情况经常还要同时考虑数据的完整性(相互关联的几个标志读了一半被打断了重写),在1中可以通过关中断来实
现,2中可以禁止任务调度,3中则只能依靠硬件的良好设计了。
相关文章推荐
- Java关键字:transient,strictfp和volatile简介
- Java关键字:transient,strictfp和volatile简介
- volatile关键字简介
- 面试官最爱的volatile关键字
- typeof关键字简介
- 关键字volatile有什么含意?并给出三个不同的例子。
- 【转载】Java并发编程6:volatile关键字解析
- 关于volatile关键字的说明以及测试
- C#中的volatile关键字
- 关键字volatile有什么含义
- 详解C中volatile关键字
- Java volatile关键字总结
- c语言中volatile关键字的作用(转帖)
- 10049---java-Transient关键字、Volatile关键字介绍和序列化、反序列化机制、单例类序列化
- java中volatile关键字的含义
- Java并发编程:volatile关键字解析
- 论 关键字 volatile
- 关于关键字volatile
- C语言中volatile关键字的作用
- C/C++中volatile关键字详解