私のプログラムはファイルから構造体にデータをロードします
std::tr1::unordered_map< Key, Details*>
と
std::tr1::unordered_map< KeyOuter, std::tr1::unordered_map<KeyInner, Details*>* >
Key := std::string | int | long long
Details : struct { Fields } ( sizeof >=40 bytes )
私のプログラムは定期的にファイルから新しいデータを読み取り、その後古い構造をリサイクルします。(新規・削除操作が多い)
Windows の場合:データをリロードした後のメモリ使用量は ~200 MB です。
CentOS の同じファイル:リロードごとに合計メモリ使用量が 1000 MB まで増加します (メモリ使用量: 200->400->600->800->1000->1000->1000->1000)
vld と valngrind でリークは検出されませんでした。
Linuxのメモリでこの問題をどのように解決しますか?