数千のフォルダーを含むベース ディレクトリがあります。これらのフォルダー内には、1 ~ 10 個のファイルを含む 1 ~ 20 個のサブフォルダーが存在する可能性があります。60 日以上経過したすべてのファイルを削除したいと考えています。以下のコードを使用して、削除する必要があるファイルのリストを取得していました。
DirectoryInfo dirInfo = new DirectoryInfo(myBaseDirectory);
FileInfo[] oldFiles =
dirInfo.GetFiles("*.*", SearchOption.AllDirectories)
.Where(t=>t.CreationTime < DateTime.Now.AddDays(-60)).ToArray();
しかし、これを約30分間実行しましたが、まだ完了していません。とにかく、上記の行のパフォーマンスを潜在的に改善できることを誰かが見ることができるかどうか、またはパフォーマンスを向上させるためにこれに完全にアプローチする必要がある別の方法があるかどうかに興味がありますか? 提案?