博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
嵌入式100题(030):volatile作用和用法
阅读量:4166 次
发布时间:2019-05-26

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

volatile作用和用法

  使用volatile关键字声明的变量或对象通常具有与优化、多线程相关的特殊属性。通常,volatile关键字用来阻止(伪)编译器认为的无法“被代码本身”改变的代码(变量/对象)进行优化。如在C语言中,volatile关键字可以用来提醒编译器它后面所定义的变量随时有可能改变,因此编译后的程序每次需要存储或读取这个变量的时候,都会直接从变量地址中读取数据。如果没有volatile关键字,则编译器可能优化读取和存储,可能暂时使用寄存器中的值,如果这个变量由别的程序更新了的话,将出现不一致的现象。

总结:

  优点:防止编译器对代码优化,变量值是直接从变量地址中读取和存储的。

  缺点: 这种使用过多会导致代码十分庞大。

转载地址:http://axrxi.baihongyu.com/

你可能感兴趣的文章
CentOS7 安装 VirtualBox5.2.8启动系统是出错
查看>>
SLF4j多个log4j2的实现类导致日志生成不了
查看>>
Quartz定时调度CronExpression配置格式说明与实例
查看>>
UIViewController的生命周期
查看>>
NSDate 使用
查看>>
iPhone数据存储及持久化
查看>>
NSString字符串常用操作
查看>>
IPhone中SQLite3的使用
查看>>
iPhone 文件结构和文件操作
查看>>
ios开发 数据存储
查看>>
10.8中查看iphone模拟器文件的位置
查看>>
Sqlite 管理工具 SQLiteDeveloper及破解
查看>>
IOS设置UIView的边框为圆角
查看>>
UIView CALayer 属性不显示错误 Property cannot be found in forward class object 'CALayer
查看>>
UIView和CALayer的区别
查看>>
iOS动画效果和实现
查看>>
把两台电脑直连实现高速访问
查看>>
IOS icon的尺寸
查看>>
win7下计划任务schtasks使用详解及"错误:无法加载列资源"的解决方法
查看>>
windows下cmd命令行显示UTF8字符设置(CHCP命令)
查看>>