tcmalloc安裝,使用以及解析(一)


  由於想接觸tcmalloc,所以索性對tcmalloc做一個徹底點的分析,以下是一些分析的心得。

 

一. 安裝

  tcmalloc在gperftools之中,故想要使用tcmalloc,就得先安裝gperftools。在linux下,其安裝步驟如下:

  1. tar xzvf gperftools-2.1.tar.gz

  2. cd gperftools-2.1

  3. ./configure --enable-frame-pointers

  4. make

  5. make install

  這里需要注意一點,在linux下,如果直接./configure,那么make時會報出編譯錯誤:error Cannot calculate stack trace: will need to write for your environment。解決方法如上所示,在configure時加入選項--enable-frame-pointers。

  如果想定制化安裝,請自行參閱gperftools的安裝文檔,即源碼包中的INSTALL文件。

 

二. 使用

  對於tcmalloc的使用,還是用程序來說明吧。

  tcmalloc_sample.cpp:

#include <iostream>
#include <google/tcmalloc.h>

int main()
{
    char *cp = (char *)tc_malloc(23 * sizeof(char));
    tc_free(cp);
    cp = NULL;
    return 0;
}

  注:以下的步驟都是以第一部分所述的安裝方式為前提而進行的。

  1. 編譯:g++ -o tcmalloc_sample -g tcmalloc_sample.cpp -ltcmalloc

  2. 運行: ./tcmalloc_sample

  如果遇到以下錯誤:

  error while loading shared libraries: libtcmalloc.so.4: cannot open shared object file: No such file or directory

  那么就需要為系統指定libtcmalloc的加載路徑:

  1. echo /usr/local/lib > /etc/ld.so.conf.d/libtcmalloc.conf

  2. ldconfig

  現在運行./tcmallco_sample命令,就不會出現上面提到的錯誤了。

 

 (To Be Continued...)

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM