2

当社では、メモリ リークを検出するための glibc の mtrace (MALLOC_TRACE) 機能に似た社内フレームワークを使用しています。このフレームワークは Windows で実行するように作成されていますが、GNU/Linux ではうまく動作しません。

では、Windows、GNU/Linux、できれば MacOSX でも実行できる、移植可能な mtrace (MALLOC_TRACE) に相当するものを知っている人はいますか?

4

2 に答える 2

2

dmallocを試しましたか?

http://dmalloc.com/

おそらく、Linux では valgrind の方がはるかに優れていると思います

于 2011-11-30T14:16:25.880 に答える
1

数か月前、ある種の OOP を可能にする移植可能な C ライブラリのベースを開発しました。

メモリは参照カウントで管理され、プロジェクトにはメモリ デバッガーが含まれており、すべての割り当てを追跡し、必要に応じて拡張デバッグ情報を提供します。

BOOST ライセンスの下で公開されているため、自由に使用できます。

https://github.com/macmade/XSFoundation/

現在のリビジョンは実際には動作しない状態にありますが、古いリビジョンをチェックして、どのように行われているかを確認できます。

動作中のバージョンはタグ ( 1.2.2-0 ) で利用できます。これは、OSX、Windows、および Linux で問題なくビルドできます。

メモリは主に次のsource/coreディレクトリにあります。

たとえば、SegmentationFault の出力の種類は次のとおりです。

ここに画像の説明を入力

その後、バックトレース情報、表示割り当てなどを取得できます。

于 2011-11-30T14:17:07.870 に答える