首先我想说我来自非计算机科学背景并且我一直在学习 C++ 语言。我无法理解缓存到底是什么?它在不同的语境中有不同的含义。我想知道在 C++ 程序中什么叫做缓存?例如,如果我int
在文件中有一些数据。如果我读取它并存储在一个int
数组中,那么这是否意味着我已经“缓存”了数据?对我来说,使用数据似乎是常识,因为从文件读取总是比从 RAM 读取差。但是由于这篇文章,我有点困惑。
在 CPU 中可以有多个缓存,以加速循环中的指令或存储经常访问的数据。这些缓存很小但非常快。从高速缓存中读取数据比从 RAM 中读取数据要快得多。
它说从缓存中读取数据比从 RAM 中读取数据要快得多。我认为RAM和缓存是一样的。有人可以解决我的困惑吗?
编辑:我正在更新这个问题,因为以前它太宽泛了。我的困惑始于这个答案。他说
RowData 和 m_data 特定于我的实现,但它们仅用于缓存有关文件中行的信息
在这种情况下缓存是什么意思?