栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java 并发编程实战-01-分布图

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java 并发编程实战-01-分布图

为了合理利用 CPU 的高性能,平衡这三者的速度差异,计算机体系结构、操作系统、编译程序都做出了贡献,主要体现为:

1. CPU 增加了缓存,以均衡与内存的速度差异;

2. 操作系统增加了进程、线程,以分时复用 CPU,进而均衡 CPU 与 I/O 设备的速度差异;

3. 编译程序优化指令执行次序,使得缓存能够得到更加合理地利用。

样例:

instance = new Singleton();

我们以为的 new 操作应该是:

        分配一块内存 M;

        在内存 M 上初始化 Singleton 对象;

        然后 M 的地址赋值给 instance 变量。

但是实际上优化后的执行路径却是这样的:

        分配一块内存 M;

        将 M 的地址赋值给 instance 变量;

        最后在内存 M 上初始化 Singleton 对象。

多线程切换将出现问题;

使用 volatile 结局。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/723417.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号