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

天山路街道网站建设如何自己创建网站

天山路街道网站建设,如何自己创建网站,上海网站外包建设,潍坊网页网站制作首先补充几个知识点: 内存可见性 举一个例子: 终端: 分析:t2线程没问题,问题在于t1。1!0,t1应该结束才对。 t2改了flag,t1没有看见。 t2是写入,t1是读取 flag变量的…

首先补充几个知识点:

内存可见性

举一个例子:

终端:

分析:t2线程没问题,问题在于t1。1!=0,t1应该结束才对。

·t2改了flag,t1没有看见。   t2是写入,t1是读取

·flag变量的修改对于t1线程不可见

编译器优化

·大多数情况是可以做到逻辑不变并对代码优化调整,提高效率,但一些特定场景可能会出现误判

比如这个过程:load(拿数据--读内存),cmp(比较--寄存器操作),load,cmp 反复执行,在反复执行中拿到flag一样;但是load比cmp耗时多---读内存比读寄存器效率慢得多。此时load读到的值一样,编译器直接把从内存读取flag这个操作优化掉了。

·编译器不是看不见改变,而是不知道另外一个线程的他flag修改代码能不能执行以及啥时候执行。

        --用户输入啥,编译器无法预计。

volatile解决内存可见性引起的线程安全问题

关键字修饰变量:

·提醒JVM在读写volatile变量指令前后添加“内存屏障相关的指令“

结合java内存模型 --- JMM

·一个java进程会有一个“主内存”存储空间

·每个java线程又有自己的“工作内存”存储空间---其实不是内存,是存储介质

       -再深层一点,在操作系统分析,“工作内存”中不仅有寄存器,还有缓存,(缓存有很多层)

·上方的代码例子,t1进行flag变量的判定,先把flag值从主内存读到工作内存,用工作内存中的值进行判定。同时t2对flag进行修改,修改的是主内存的值,主内存的变更不会影响到t1的工作内存

http://www.dtcms.com/wzjs/63837.html

相关文章:

  • 广州网站建设定制多少钱怎么注册网站 个人
  • 网站建设需要多久com天堂网
  • 宝鸡做网站设计百度一下打开网页
  • 一个公司做2个产品网站怎么做的非国产手机浏览器
  • 蓟县做网站郑州seo优化大师
  • 短租网网站开发 项目背景seo网络推广员招聘
  • 公司做网站注意什么百度网盘官网
  • 做外贸常用网站谷歌浏览器在线入口
  • 平面设计网站源码制作网站需要什么技术
  • 中国建设建行网站优化工作流程
  • 揭阳专业网站设计公司百度24小时人工客服电话
  • 大学生兼职做网站百度网址是什么
  • 自学商城网站建设神马推广登录
  • 客户对网站建设公司的评价广州市新闻最新消息
  • 大淘客怎么做网站每日新闻快报
  • 长春网站建设xgsite2024年瘟疫大爆发
  • 用什么语言来做网站网站怎么优化推广
  • 地方网站全网营销深圳网站搜索优化
  • 昆明做网站价格淘宝网店的seo主要是什么
  • 东莞市专注网站建设平台在哪个网站可以免费做广告
  • 单页网站怎么做seo郑州seo外包公司哪家好
  • 网站备案对应的ip地址如何给自己的公司建网站
  • 如何查询一个网站是那家公司做的友情链接互换
  • 种子汤唯梁朝伟做视频网站免费seo工具大全
  • 网站把域名解析到新ip后合肥网
  • 怎么给网站制作二维码新品上市怎么做宣传推广
  • 学网站建设与维护电商怎么注册开店
  • 使用php做网站手机怎么搭建网站
  • 湛江 网站建设提高网站排名
  • 自己网站做反链建材企业网站推广方案