摘要: 背景 我们知道导致cpu缓存导致了可见性问题,编译器优化带来了有序性问题。那么如果我们禁用了cpu缓存与编译器优化,就能够解决问题,但是性能就无法提升了。所以一个合理的方案,就是按照一定规范来禁用缓存和编译器优化,即在某些情况下禁用缓存与编译器优化。Java内存模型就是这样的一个规范,用来解决可见性 阅读全文
posted @ 2019-06-08 23:05 Hello...my...world 阅读(250) 评论(0) 推荐(0)
摘要: 一直以来,由于cpu、内存、I/O存在着巨大的速度差异,cpu>内存>I/O。为了平衡这三者的差异,计算机结构、操作系统、编译器都做出了巨大的贡献,主要体现为: 1. 增加cpu缓存,以均衡与内存的速度差异 2. 编译器优化指令执行次序,使得缓存能够更加合理利用 3. 操作系统增加进程、线程,以分时 阅读全文
posted @ 2019-06-08 01:50 Hello...my...world 阅读(607) 评论(0) 推荐(0)