如何确定pthread利用的内存

时间:2011-08-30 03:25:33

标签: c linux pthreads

任何给定的时间点,我如何获得每个线程使用的内存大小?

3 个答案:

答案 0 :(得分:2)

您不能,堆在进程中的所有线程之间共享。

答案 1 :(得分:2)

如果你想要的只是heap profiler考虑​​使用自己的分配器TCMalloc的Google性能工具。

http://code.google.com/p/google-perftools/

另一个高性能分配器是jemalloc,它提供统计报告,包括malloc_stats_print()

的每线程缓存箱详细信息

http://www.canonware.com/jemalloc/index.html

答案 2 :(得分:0)

要检查线程的堆栈大小,可以使用非可移植的GNU扩展pthread_getattr_np 你也可以检查/ proc / self / maps(或/ proc / PID / maps),但这种方式更复杂。