注意:我在OSX / Yosemite上,所以Valgrind当前不可用。DTrace是,但是没有可用的libc:malloc挂钩。
问题陈述:
我有一个使用过多内存的C ++程序,我需要知道罪魁祸首是谁。请注意,它没有内存泄漏,只是使用了过多的内存。在内存使用方面,我需要知道:
世卫组织:很高兴知道谁在分配内存(源文件,行号)。
内容:知道要分配的内容(类名)会很高兴。
我可以编写自己的malloc / calloc / realloc并自行解决,但我想看看是否有任何工具可以首先执行此操作。
您可以尝试dmalloc(http://dmalloc.com)
从源代码构建,链接到您的程序,然后使用http://dmalloc.com/docs/latest/online/dmalloc_13.html中的实用程序功能
(免责声明:我不使用OSX,因此以上操作可能无效)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句