1、现象
程序出现core的位置不确定,但是查看core总会出现如下堆栈信息。
#0 SLL_Next (t=0x9f1ba3000) at src/linked_list.h:44 #1 SLL_Pop (list=<optimized out>) at src/linked_list.h:58 #2 Pop (this=0x48abd08) at src/thread_cache.h:204 #3 Allocate (cl=1, size=<optimized out>, this=0x48abcc0) at src/thread_cache.h:344 #4 do_malloc (size=<optimized out>) at src/tcmalloc.cc:1068 #5 cpp_alloc (nothrow=false, size=size@entry=8) at src/tcmalloc.cc:1354 #6 tc_new (size=size@entry=8) at src/tcmalloc.cc:1530
2、工具
valgrind:
使用valgrind会存在一个问题:如果程序中使用tc_malloc会导致位置定位位置不准,因此是需要提剔除。
https://www.jianshu.com/p/9c732c91dc79
https://blog.csdn.net/wilson1068/article/details/87981072