摘要: 线程本地cache 线程本地cache对应的是类 ThreadCache,每一个thread一个实例,初始化代码在static函数CreateCacheIfNecessary中, 在该线程第一次申请内存的时候初始化,调用堆栈是 : 1 tcmalloc::ThreadCache::CreateCacheIfNecessary()2 tcmalloc::ThreadCa... 阅读全文
posted @ 2013-11-27 21:15 persistentsnail 阅读(3432) 评论(0) 推荐(0) 编辑
摘要: 替换libc中的malloc free 不同平台替换方式不同。 基于unix的系统上的glibc,使用了weak alias的方式替换。具体来说是因为这些入口函数都被定义成了weak symbols,再加上gcc支持 alias attribute,所以替换就变成了这种通用形式: void* malloc(size_t size) __THROW __attribute__ (... 阅读全文
posted @ 2013-11-27 20:33 persistentsnail 阅读(2064) 评论(0) 推荐(0) 编辑