カスタムメモリマネージャでファイティングフラグメンテーション
-
06-09-2019 - |
質問
私は、ヒープ割り当て(ダグ・リーのmallocに基づいて、新しい/削除のmalloc / reallocを/自由をオーバーロードしますが自由に待たれるように設計さ)用C / C ++メモリマネージャを書かれており、断片化といくつかの問題を抱えているように見えました。何か良いリソースマネージャを経由して断片化を避けるためにその詳細は良い戦略がそこにありますか?
私はすでに(のGUIDでスマートポインタを使用していない)割り当てられているメモリを再配置し、再書き込みの代わりにヒープ割り当てのプールを使用するようにシステムを実現不可能であることができないことに注意してください。
おかげで、
グラント
解決
//:
あなたはjemalloc(のhttpからいくつかのインスピレーションを取得することもできますpeople.freebsd.org/~jasone/jemalloc/bsdcan2006/jemalloc.pdfする) - このアロケータは、明示的に、その抗フラグメンテーション機能の新しいFirefoxで使用されている。
。他のヒント
はglibcのような、より成熟したプロジェクトはそれを行う方法を見てください。
迅速なGoogleがして、こののを見つけました参照のスタックます。
所属していません StackOverflow