ユーザーが特定の列を引き出して、必要なものだけを含むはるかに小さい別のcsvファイルに書き込むことができるように、多くの列を持つ一連のcsvファイルを処理するプログラムがあります。最大 800 万行になる可能性があるため、リストを使用してキュー システムを作成しました。このシステムでは、リスト バッファーにピース (一度に 50000 行) を追加して、ライターがそのピースを書き込めるようにし、それを使用listbuffer[i].clear();
して削除します。これにより、メモリの使用量を大幅に削減し、バッファを 10 個のアイテムのみに制限して、必要なだけメモリの使用量を抑えます。
私の問題は、listbuffer[i].clear();
プログラム全体が終了し、次の使用のために空白になるようにバッファを再初期化するまで、以前に使用したメモリを解放しないことです。
**リストバッファはList<List<List<string>>>
これだけで、もう少し意味が分かります...
listbuffer[行のチャンク][行番号][列番号]
使用しているメモリを解放するようにリストに指示する方法はありlist[i]
ますか?
ありがとう!