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

门户网站编辑联系方式做ppt图片用的网站

门户网站编辑联系方式,做ppt图片用的网站,wordpress 微博侧边栏,策划公司名称大全集最新深入理解 Java 中的 volatile 关键字:可见性与有序性的保障 volatile主要做了两个事情可见性保证 和 有序性 可见性保证就是: 对volatile的写操作会对其他线程可见。 简单来说我们A线程的修改了volatile的值,那么我B线程也可以看见。 有序…

深入理解 Java 中的 volatile 关键字:可见性与有序性的保障

volatile主要做了两个事情可见性保证有序性

可见性保证就是: 对volatile的写操作会对其他线程可见。

简单来说我们A线程的修改了volatile的值,那么我B线程也可以看见。

有序性: 有序性就是他确保了一个对volatile之前所有的写操作

简单来说

int a = 0;
volatile int v = 0;
a = 1;
v = 1;

volatile确保了让CPU先执行a=1彻底写进主内存然后在执行v=1

为什么一定要保证有序性?

因为在多线程编程有序性是确保操作按照预期执行的重要机制。

class Example {int a = 0;volatile boolean flag = false;public void writer() {a = 1;           // 1flag = true;     // 2}public void reader() {if (flag) {      // 3int i = a;   // 4// i should be 1}}
}

这个线程一个执行writer方法, 另一个执行reader方法,wirter方法中,写操作a=1操作会在flag=true之前,如果没有volatile的保证,我们的CPU可能会重排序这些操作,可能我们的flag先执行了, 然后在执行v=1;因为我们的编译器和CPU可能会对我们非volatitle变量进行重排序优化性能,所以可能执行的顺序不是我们预期想要的。

如何保证有序性?

volatile是通过内存屏障实现可见性的,。

写屏障

确保我们volatile之前所有写操作都同步到主内存了,同步到主内存就有了可见性了。

读屏障

确保这个读操作回从主内存读到最新的数据。包括在读屏障后的所有代码也会也会从主内存读,哪怕不是volatile

可见性

对volatile变量写操作会立刻刷新到主内存

每次volatile读取都是从主内存读取,而不是线程的缓存

如果我不想从主内存读了或者写进我该怎么办

volatile 适合用于控制标志(flag)变量,这些变量通常用于线程间的简单状态检查和控制。

public class VolatileExample {private volatile boolean flag = false;public void setFlagTrue() {flag = true;}public void doWork() {while (!flag) {// do some work}// flag is true, proceed with next step}
}
http://www.yayakq.cn/news/7457/

相关文章:

  • 跨境电商知名网站建设铁岭做网站信息
  • 陕西网站建设宣传方案眉山网站设计
  • 开发网站的项目背景描述wordpress返回旧版本
  • 宁波建设网站公司推荐二环建设部网站
  • 用凡科做网站好弄吗wordpress新建网页
  • 怎样编辑网站标题wordpress登陆错误500
  • 淘宝网站开发成本微商城怎么开通需要多少钱
  • 设计友好的网站网站排名在线优化工具
  • 麦包包的网站建设百度搜索风云榜总榜
  • 哪个网站做h5比较好百度统计app下载
  • 手机网站如何做唐山seo排名优化
  • 苏州网站建设找苏州聚尚网络首选还有什么网站可以做面包车拉货
  • 营销型企业网站有哪些类型广告营销平台
  • 百度网站外链发布平台中通建设计院第四分公司网站
  • dz论坛可以做招聘网站甘肃最新消息
  • 巴中 网站建设企业内部网站源码
  • 做设计的素材网站有哪些万网域名解析平台
  • 精品课程网站设计与实现青岛手机建站多少钱
  • 做php网站需要什么软件wordpress 上传模板
  • 网站备案归属地推广普通话资料内容
  • 炫酷的动画网站学院网站板块
  • 网站100m空间被老板抓到用公司产品做自己的网站
  • 网站运营企业wordpress 如何添加备案号
  • 浦东新区网站建设深圳市点击未来科技网站建设
  • wordpress建设的是模板网站吗东莞比较出名的网站建设公司
  • 网站技术维护费九亭做网站
  • 哈尔滨做网站电话网站建设运营方案 团队
  • wordpress手机网站插件wordpress官网app
  • 上海网站建设的公司网站开启伪静态需要编写什么代码
  • 做有趣的网站大学生app开发经费预算表