并发
小菜洋子
1873176818@qq.com
展开
-
Java 内存模型(JMM)
Java 内存模型的主要目标是定义程序中各个变量的访问规则,即在虚拟机中将变量存储到内存和从内存中取出变量这样底层细节。此处的变量与 Java 编程时所说的变量不一样,只包括了实例字段、静态字段和构成数组对象的元素,但是不包括局部变量与方法参数,后者是线程私有的,不会被共享。 Java 内存模型中规定了所有的变量都存储在主内存中,每个线程还有自己的工作内存(类比缓存理解),线程的工作内存中保存了...原创 2020-04-09 00:51:01 · 196 阅读 · 0 评论 -
MESI CPU 缓存一致性协议
1 为什么需要cpu 缓存。cpu的频率要远远高于主存的频率,所以添加缓存,来缓解cpu和主存之间速度不匹配问题。 2 缓存为什么可以起作用。因为程序访问数据具有时间局部性和空间局部性。所谓时间局部性就是说某个数据被访问,可能在短时间内再次被访问。空间局部性就是说某个数据被访问可能邻近的数据也会被访问。 3 要保持多cpu缓存的数据的一致性那么有需要缓存一致性协议。MESI M: 被修改(M...原创 2020-04-08 23:57:28 · 73 阅读 · 0 评论