课程
/后端开发
/Java
/细说Java多线程之内存可见性
为什么CPU执行时很快的刷新缓存,一般可以保证可见性?慢了就不行?
2015-12-02
源自:细说Java多线程之内存可见性 5-1
正在回答
慢了不就不会刷新了。。。CPU运算快的话,在分配的时间片内就能完成所有工作:工作内从1->主内存->工作内存2,然后这个线程就释放CPU时间片,这样一来就保证了数据的可见性。如果是慢了话CPU强行剥夺该线的资源,分配给其它线程,该线程就需要等待CPU下次给该线程分配时间片,如果在这段时间内有别的线程访问共享变量,可见性就没法保证了。
慕斯卡4106679 提问者
举报
用两种方式实现内存可见性,代领大家深层次学习Java中的内存
1 回答内存可见性是什么意思?与共享变量可见性有什么关系?
3 回答为什么共享变量的可见性一定是private
4 回答ReentrantLock也能够保证线程之间内存的可见性吗?
4 回答synchronized讲的有问题呀!这样做并不能实现可见性呀!不要误人子弟呀
2 回答关于long和double非原子性的解决办法