特定のフォルダーにファイルが存在するかどうかをチェックする機能があり、ファイルにメインデータベースに存在しないデータが含まれている場合は、そのデータをメインデータベースに書き込み、Directory.EnumerateFilesを使用してリストを取得しているファイルを削除します。ファイルの数を増やしてから、このリストを繰り返してデータベースに存在するかどうかを確認します。リストが空の場合は関数から戻りたいです。取得したリストが空かどうかを確認する方法、デバッグしてフォルダにファイルがない場合列挙が結果を生成しなかったことを示すファイル。
private void GetListOfFiles()
{
string sourceDirectory = pathOfXmlFiles;
if (!Directory.Exists(sourceDirectory))
{
return;
}
var xmlFiles = Directory.EnumerateFiles(sourceDirectory, "*.xml");
foreach (var item in xmlFiles)
{
ReadXmlFile(item);
}
foreach (var item in xmlFiles)
{
if (_writtenToDb)
{
File.Delete(item);
}
}
}
25秒ごとに起動するタイマーを持つ別のスレッドを使用してこれらのファイルの存在を確認します。タイマーを停止することはありません。これによりメモリリークが発生する可能性がありますか?