【发布时间】:2012-09-13 05:13:35
【问题描述】:
我不确定是什么原因造成的,所以如果我在搜索中找不到我需要的信息,请原谅我。这是一个例子:
假设我们有一个包含 1,000,000 个文件的文件夹。运行 Directory.GetFiles() 将需要几分钟。但是,之后立即再次运行它只需几秒钟。为什么会这样?对象是否缓存在某处?怎么才能用原来的时间运行呢?
【问题讨论】:
标签: c# performance caching execution
我不确定是什么原因造成的,所以如果我在搜索中找不到我需要的信息,请原谅我。这是一个例子:
假设我们有一个包含 1,000,000 个文件的文件夹。运行 Directory.GetFiles() 将需要几分钟。但是,之后立即再次运行它只需几秒钟。为什么会这样?对象是否缓存在某处?怎么才能用原来的时间运行呢?
【问题讨论】:
标签: c# performance caching execution
硬盘具有内部缓存,有助于加快后续读取速度。尝试在完全不同的扇区中读取一堆其他目录信息以清除缓存。
【讨论】: