重复文件需要不同的时间才能读取

时间:2011-03-01 12:13:08

标签: c# performance file

任何人都可以告诉我为什么两个文件 - 彼此重复 - 在内存中加载不同的时间?

var fileStream = new FileStream(filename,
                  FileMode.Open,
                  FileAccess.Read,
                  FileShare.Read,
                  16 * 1024,
                  FileOptions.SequentialScan);

这条线很慢(一个文件需要3倍的时间......)

fileStream.CopyTo(Form1.GlobalMS);

ODDLY,当我复制文件(在cmd窗口中)然后尝试加载该文件时 - 加载速度非常快......几乎就像新创建的文件在某种程度上更容易访问 - 这可能与旧文件有关在某种程度上变得支离破碎?这些都是1G加文件

2 个答案:

答案 0 :(得分:0)

它们是存储在不同的地方(例如,网络共享中的一个吗?)

你好吗?你确定你没有忘记重置一个计时器,所以你从第二个计时器获得的时间包括第一个?

您是否清除了两次测试之间的任何变量以确保时间合理?

答案 1 :(得分:0)

加载第一个文件后,可能没有足够的内存来加载第二个文件?那么PC使用HDD模拟RAM?