memwatchの使用(二)



2.3分析ログファイル
ログファイル
memwatch.log
に含まれる情報は主に以下の点があります.*  
テスト日*  
じょうたいコレクタ
の情報*  
使用
MemWatch
の出力関数またはマクロ(TRACEなど)の情報を表示します.*  
MemWatch
取得されたエラーメッセージ*  
メモリ使用量のグローバル統計値(4点:1)メモリを何回割り当てたか2)最大メモリ使用量3)メモリ使用量4)解放された合計メモリ数
MemWatch
取得されたエラーは
ログ・ファイルの出力フォーマットは次のとおりです.
message: filename(linenumber), information
 
2.4注意事項
mwInit()
mwTerm()に対応しています.mwInit()を何回使用するかは,何回呼び出す必要があります
mwTerm()
MemWatchを終了するために使用する.  
プロセスでプログラムの異常割り込みがキャプチャされた場合は、mwAbort()を呼び出す必要があります.
mwTerm()
.mwTerm()が表示されていても、mwAbort()はMemWatchを終了します.
 
MemWatch
スレッドが安全であることは確認できません.
たまたま使っていたら
Wind32
あるいはスレッドを使って
2.66
は、スレッドを初歩的にサポートしています.定義#テイギ#
WIN32
または
MW_PTHREADS
スレッドを明確にサポートします.これにより、グローバル・メモリ・チェーンにアクセスすると、グローバル反発変数が生成されます.
MemWatch
反発変数はロックされますが、スレッドが安全であることは証明できません.
 
3結論
    
から
MemWatch
カーネルモジュールでは使用できないことがわかります.MemWatch自体がカーネルインタフェースではなくアプリケーション層のインタフェースを使用しているからです.しかし、普通のアプリケーション層のプログラムに対して、私はやはり比較的に役に立つと思って、しかもオープンソースで、自分でコードの実現を修正することができます;メモリの漏洩を簡単に見つけることができ、特に提供されるインタフェース関数は簡単で分かりやすく、学習が容易で、アプリケーション層プログラムのユニットテストに適しています.