我正在分析我的来源。当我运行时,我看到一些在退出时仍然存在的分配valgrind
。
这是摘要:
$ valgrind --track-origins=yes --show-reachable=yes --leak-check=full $BINARY
...
==20235== LEAK SUMMARY:
==20235== definitely lost: 0 bytes in 0 blocks
==20235== indirectly lost: 0 bytes in 0 blocks
==20235== possibly lost: 0 bytes in 0 blocks
==20235== still reachable: 20,228 bytes in 37 blocks
==20235== suppressed: 0 bytes in 0 blocks
==20235==
负责的图书馆是:
dyld
:所有 81 个 malloc 都有共同的调用:(不知道)
{libsystem_c, libsystem_notify, libdispatch}.dylib
:所有 10 个 malloc 都有共同的调用:
localtime(...)
在用于初始化和返回我不应该的time.h
用途中定义,因为我没有分配它。tzset(...)
struct tm*
free
如何恢复这些仍然可以访问的 20,228 字节?
更新
我正在运行 Mac OS X