当前位置: 首页 > news >正文

淄博网站建设0533cl网站seo检测

淄博网站建设0533cl,网站seo检测,网站开发实训报告,烟台企业宣传片制作公司volatile作用 确保数据每次都从源头读取,即每次都从内存中读取,不从缓存中读取。 这样做的目的是确保不会被优化 int i 0;int main(int argc, char **argv) {const char *str;if (i 0) {str "hello";} else {str "world";}ret…

volatile作用

确保数据每次都从源头读取,即每次都从内存中读取,不从缓存中读取。
这样做的目的是确保不会被优化

int i = 0;int main(int argc, char **argv)
{const char *str;if (i == 0) {str = "hello";} else {str = "world";}return 0;
}

如上一段代码,从main中可以确定i一定等于0,所以在优化后就会直接让str = "hello";
但是其他线程可能会修改i的值,这样就会出错。加上volatile这段比较代码就不会被优化

volatile为什么不等于原子操作

1、修改一个变量的值会经过以下三个步骤

  1. 从内存读取值 ( R )
  2. 在算术逻辑单元ALU进行计算 ( M )
  3. 将计算后的值写回内存 ( W )

两个线程都对加上volatile的整形变量x累加,初始值为0

  1. p1读取到x的值
  2. p1对x进行累加
  3. p2读取x的值
  4. p1将x写回内存
  5. p2对x进行累加
  6. p2将x写回内存

最终结果x将会是1,显然是错误的
可以让p1读取前先锁定内存总线,在写完后释放内存总线

http://www.hengruixuexiao.com/news/56407.html

相关文章:

  • 做网站维护怎么找客户搜索引擎怎么做
  • 宁波网站建站推广站长工具seo综合查询推广
  • 网站建设com优化网站排名
  • 乐山旅游英文网站建设品牌推广和营销推广
  • 怎样做静态网站关键词怎么提取
  • 哈市哪里网站做的好seo网站诊断分析报告
  • 东莞ui设计公司seo怎么赚钱
  • 哪家网站做旅游攻略好做销售最挣钱的10个行业
  • 常用于做网站的软件深圳优化seo
  • 编程外包平台哪里可以学seo课程
  • 外贸平台做摩托车配件什么网站好聚名网域名注册
  • 网站建设成都北京营销公司排行榜
  • 株洲今日头条最新消息国外网站seo
  • 如何做自己的广告网站google seo优化
  • 社会信用体系网站建设百度置顶广告多少钱
  • 河北seo网站优化价格google seo 优化
  • 舟山的房子做民宿上什么网站域名申请的流程
  • 浙江交通工程建设集团网站2345浏览器网址
  • 高端集团网站建设应用商店aso优化
  • 人力资源和社会保障部证书有用吗石家庄网络seo推广
  • 网站网警备案流程seo优化排名易下拉用法
  • 网站设计语言有哪些前端seo是什么意思
  • wordpress修改首页模板大侠seo外链自动群发工具
  • 公司做网站的价格几千元广东省最新新闻
  • 外网设计素材网站app推广赚佣金
  • 南京汤山建设银行网站百度竞价开户
  • h5页面怎么做百度seo公司
  • 柳州正规网站制作公司英文站友情链接去哪里查
  • 怎么做网站的内链外链搜易网托管模式的特点
  • 企业网站构建方案东莞网络优化服务商