Java内存模型:
java内存模型就长这样:
Java内存模型屏蔽了底层硬件差异,抽象出来一个内存交互的模型,定义了程序中各种变量的访问规则,关注点在内存交互。通过Java内存模型里的规范,可以保证线程安全。而要保证线程安全必须满足三个特性:可见性、原子性、有序性。
可见性:
基于现有的Java内存模型,我们来看看可见性问题是如何出现的:
java内存模型就长这样:
Java内存模型屏蔽了底层硬件差异,抽象出来一个内存交互的模型,定义了程序中各种变量的访问规则,关注点在内存交互。通过Java内存模型里的规范,可以保证线程安全。而要保证线程安全必须满足三个特性:可见性、原子性、有序性。
基于现有的Java内存模型,我们来看看可见性问题是如何出现的: