什么是java的缓存?
查了下缓存的概念,就是比内存还快的一片存储区域。那么java的缓存技术又是什么呢?把数据放到内存中算是缓存吗?还是必须放到缓存中?相当迷糊,请高手指点!
[解决办法]
就是比内存还快的一片存储区域
明显不对啊,缓存数据可以放在内存中,也可以放在硬盘中。这都是缓存。
内存的速度是最快的。缓存做的最多的也是把数据放在内存中。
[解决办法]
缓存是指临时文件交换区,电脑把最常用的文件从存储器里提出来临时放在缓存里,就像把工具和材料搬上工作台一样,这样会比用时现去仓库取更方便。因为缓存往往使用的是RAM(断电即掉的非永久储存),所以在忙完后还是会把文件送到硬盘等存储器里永久存储。电脑里最大的缓存就是内存条了,最快的是CPU上镶的L1和L2缓存,显卡的显存是给GPU用的缓存,硬盘上也有16M或者32M的缓存。千万不能把缓存理解成一个东西,它是一种处理方式的统称!
[解决办法]
我操,TMD CSDN,老子打那么多字,一个鸟错误,不能提交,自动刷新没了!!!
再简单说一下
楼主查询到的缓存概念是硬件级的,在PC机里,在计算效率方面一般指CPU的缓存。
java里缓存可以分两种情况,一种是JVM的缓存,这个是JVM与操作系统打交道用的,在使用java语言开发时,一般不用到。
一种是java语言缓存,这里的缓存是一种机制,不与任何硬件相关。比如一个 static的变量, 当第一次访问他时我们到文件里读他的值,以后访问时,直接把这个值返回去,这里省下了IO的时间,提高了效率,这就是一个简单的缓存机制。
[解决办法]
缓存有很多种,用于暂时存放的基本都可以叫做缓存,你说的比内存还快的缓存 应该是说的是CPU的一、二级缓存 吧,那个是CPU用于和内存建立组相连映射以提高访存速度的CPU内置的高速存取访问电路也就是计算机里面的术语“Cache”,显然JAVA中的缓存不是指这个啊,Java中的缓存 我想应该就是指的是一组用于提高IO性能的内存地址,它位于JVM中,那么显然在内存或者磁盘中。