0

我正在使用 Delphi 10。我的一个程序在启动时从磁盘读取大量数据。当我第一次运行它时,完成初始任务可能需要一分钟。我关闭了程序并重新启动它。现在同样的任务在 10 秒内完成。为什么会这样?我可以在开始任务之前以编程方式释放内存以首先实现短暂启动吗?

4

1 回答 1

11

这是因为 Windows 文件系统缓存。第一个文件访问速度很慢,但 Windows 会将信息加载到缓存中。当您的应用程序存在并立即再次运行时,将从缓存而不是磁盘读取数据。它与内存分配无关;这是操作系统行为的一部分。

如果没有任何代码,几乎不可能提出任何可以提高应用程序性能的建议。

于 2013-06-03T02:31:17.343 回答