1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| void Main()
{
string path = @"D:\tmp";
// First run for JIT and filesystem warmup
Directory.GetFiles(path, "*.*", SearchOption.AllDirectories).Consume();
Directory.EnumerateFiles(path, "*.*", SearchOption.AllDirectories).Consume();
var sw = new Stopwatch();
sw.Start();
Directory.GetFiles(path, "*.*", SearchOption.AllDirectories).Consume();
sw.Stop();
sw.Elapsed.Dump("GetFiles");
sw.Reset();
sw.Start();
Directory.EnumerateFiles(path, "*.*", SearchOption.AllDirectories).Consume();
sw.Stop();
sw.Elapsed.Dump("EnumerateFiles");
}
static class Extensions
{
public static void Consume<T>(this IEnumerable<T> source)
{
foreach (var element in source)
{
}
}
} |
Partager