linux glibc malloc_trim(0)

在項目中發現進程的內存持續上升。

首先確定這是不是一個內存泄露,

1) gcc 的鏈接選項 -Wl,--wrap,malloc -Wl,--wrap,free -Wl,--wrap,calloc -Wl,--wrap,realloc -Wl,--wrap,strdup -Wl,--wrap,strndup -Wl,--wrap,vasprintf

      使用自己的內存池重寫內存分配函數。 發現沒有內存泄露, 那推測可能是glibc 對申請的內存做了池化,沒有歸還給系統

2)恢復原程序代碼, 爲原程序代碼添加控制指令, 可以在後臺執行

     malloc_trim(0), 頭文件<malloc.h>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章