博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
volatile
阅读量:4978 次
发布时间:2019-06-12

本文共 355 字,大约阅读时间需要 1 分钟。

volatile是类型修饰符,加上这个关键字,我们可以知道该变量可能被某些未知的因素更改(比如,操作系统,硬件或者其他线程等),但是我们不想它被修改,这个关键字可以防止编译器的优化,如下:

int main(){    volatile int i = 10;    int a = i;    //...    int b = i;    return 0;}

volatile表明i是随时可能发生变化的,每次使用都必须从i的地址中进行取值,如果没有加volatile关键字,那么编译器发现两次从i中取值,并且在a和b变量之间没有对i进行过操作,编译器在给b进行初始化的时候,就会直接从寄存器中取值给b。

转载于:https://www.cnblogs.com/chen-cai/p/9580336.html

你可能感兴趣的文章
汽车制造中的先进方法与最佳实践
查看>>
display:table / display:table-cell 用法
查看>>
UITableView优化
查看>>
iOS 点击事件传递及响应
查看>>
谷歌应用商城打开
查看>>
Oracle RMAN备份
查看>>
实时监听输入框值变化的完美方案:oninput & onpropertychange
查看>>
【C】枚举用例分析
查看>>
JS限制文本框只能输入数字
查看>>
一套完整系统对人生的意义
查看>>
【Flex】去除外边框,底背景透明,改变exe的icon
查看>>
Android 解决NestedScrollView 嵌套 RecyclerView出现的卡顿,上拉刷新无效
查看>>
Android之SharedPreferences两个工具类
查看>>
基础数论
查看>>
ios 调用webservice整理
查看>>
Spring集成log4j日志管理
查看>>
jenkins学习:jenkins的基本配置
查看>>
python学习笔记:python异常的调用原理
查看>>
用来生成get set string 方法
查看>>
iOS开发日记17-runtime基础篇
查看>>