查看: 645|回复: 2

[经验] volatile的使用

[复制链接]

主题

好友

1386

积分

进士

  • TA的每日心情
    开心
    2017-8-29 12:53
  • 签到天数: 131 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2016-10-1 09:02:53 |显示全部楼层
    一般说来,volatile用在如下的几个地方:
    1、中断服务程序中修改的供其它程序检测的变量需要加volatile;
    2、多任务环境下各任务间共享的标志应该加volatile;
    3、存储器映射的硬件寄存器通常也要加volatile说明,因为每次对它的读写都可能有不同意义;
    另外,以上这几种情况经常还要同时考虑数据的完整性(相互关联的几个标志读了一半被打断了重写),在1中可以通过关中断来实现,2 中可以禁止任务调度,3中则只能依靠硬件的良好设计了。

    回复

    使用道具 举报

    主题

    好友

    4245

    积分

    状元

  • TA的每日心情
    奋斗
    前天 22:02
  • 签到天数: 991 天

    连续签到: 2 天

    [LV.10]以坛为家III

    发表于 2016-10-1 22:38:56 |显示全部楼层
    学习和参考了
    回复

    使用道具 举报

    主题

    好友

    3745

    积分

    状元

  • TA的每日心情
    奋斗
    2018-4-5 22:22
  • 签到天数: 971 天

    连续签到: 1 天

    [LV.10]以坛为家III

    发表于 2016-10-4 21:32:39 |显示全部楼层
    谢谢分享!!!!!!!!!!!!!!!
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    关闭

    站长推荐上一条 /3 下一条

    手机版|爱板网

    GMT+8, 2018-4-22 01:21 , Processed in 0.128042 second(s), 14 queries , MemCache On.

    苏公网安备 32059002001056号

    Powered by Discuz!

    返回顶部