我在使用 Windows 软件时遇到了速度问题,该软件在 NTFS 格式的硬盘上的多个目录中查找文件。为了找出问题的原因以及在哪些设置中发生,我在本地 PC 上设置了一个测试场景。
但效果不如我预期。程序对所有目录进行第一次扫描后,对同一目录的任何其他扫描都比第一次扫描快得多。我假设目录名称及其包含的文件名已被 Windows 缓存。
如果这个缓存存在的话,是否有可能以某种方式禁用或者清空它?
答案1
正如您所猜测的,NT“缓存管理器”可能是罪魁祸首。缓存管理器和内存管理器紧密协作,最大限度地利用空闲的物理内存来缓存磁盘读取/写入(包括文件数据和文件系统元数据)。
还有一个 SysInternals,缓存集除其他功能外,它还允许您清除缓存管理器的工作集。我会尝试一下这个工具。