Elbarco 关注了问题 · 2016-04-11
Java的内存模型分为主内存,和工作内存。
主内存是所有的线程所共享的,工作内存是每个线程自己有一个,不是共享的。
线程工作时将要用到的变量从主内存拷贝到自己的工作内存,然后在工作内存中进行读和写。
写完之后,可能没被更新到主内存去。导致其他线程从主内存拷贝数据到自己的工作区时,拷贝的不是最新的数据。这就是内存可见性问题。
那么问题来了,Java的工作内存是什么??
百度 "java多线的工作内存是什么“,看了很多博客都说是各种缓存。
但是缓存不是大家都能访问的吗?