したがって、MemoryStream を使用して StreamWriter とこのアプリケーションの内部に書き込む StreamReader を使用していますが、メモリ使用量が (より大きな入力の 1 つから) 300mb 増加し、使用が終わった後に割り当てを解除しません:
StreamWriter log = new StreamWriter("tempFile.txt");
log.Write(reader.ReadToEnd());
log.Close();
reader.DiscardBufferedData();
reader.Close();
reader.Dispose();
memoryStream.Dispose();
log.Dispose();
GC.Collect();
これの前と RAM 使用量を取得した直後で、前は後よりも 300 MB 少なくなっていますが、その理由はわかりません。ここで起こっているのは、リーダーからのデータがテキストファイルに配置されていることだけであることを考慮して、そのメモリを解放するために考えられるすべてのことを行いました。なぜ大量のメモリを使用する必要があるのか わかりません一時的に。不足しているものはありますか?...ありがとう。