我曾经dlsym()
调用我的 malloc 版本,而不是默认库 malloc:
lt_malloc = (void*(*)(size_t))dlsym(RTLD_NEXT, "malloc");
TRACE((stderr, "initialize: lt_malloc=%p\n", lt_malloc));
if (!lt_malloc) {
fprintf(stderr, "LeakTracer: could not resolve 'malloc' in 'libc.so': %s\n", dlerror());
exit(1);
}
现在经过一段时间,可能是一个计时器左右,我想恢复到 malloc 的原始版本(libc 库 malloc)。我怎样才能做到这一点?
提前致谢。