1. 需要在內存洩露開始的開始調用void mtrace(void),mtrace 為malloc等函數安裝 hook,用於記錄內存分配信息,在需要內存洩露檢查代碼結束的地方調用void muntrace(void). 注意:在一般情況下,不要調用muntrace(), 而讓程序自然結束。因為可能有些內存釋放代碼要到muntrace之後才會運行。
2. 用debug模式編譯代碼
3. 設置環境變量MALLOC_TRACE為一文件名,這一文件將存有內存分配信息
export MALLOC_TRACE=mem_trace.log
4. 運行被檢查程序
5. 用mtrace檢查內存分配log文件($MALLOC_TRACE)
例如:如果log文件名為mem_trace,則執行
mtrace mem_trace mem_trace.log
進行測試。