适用于Windows的MALLOC_TRACE

在我们公司,我们有一个类似于glibc中的mtrace (MALLOC_TRACE)function的内部框架来检测内存泄漏。 这个框架是为了在Windows上运行而编写的,但在GNU / Linux中并不能很好地运行。

那么,有没有人知道可以运行在Windows,GNU / Linux,甚至是MacOSX上的mtrace(MALLOC_TRACE)。

你尝试过dmalloc吗?

http://dmalloc.com/

也许我觉得在linux上valgrind好多了

几个月前,我开发了一个便携式C库的基础,允许某种OOP。

内存使用引用计数进行管理,该项目包含一个内存调试程序,用于跟踪所有分配情况,并在必要时提供扩展调试信息。

它在BOOST许可下发布,所以你可以自由使用它。

https://github.com/macmade/XSFoundation/

当前修订版本实际上处于不可行的状态,但您可以检查旧版本,看看它是如何完成的。

标签中有一个工作版本( 1.2.2-0 )。 这个版本在OSX,Windows和Linux上都很好。

内存的东西主要位于source/core目录下:

  • XSMemory.c
  • XSMemoryDe​​bug.c
  • __XSMemory.c
  • __XSMemoryDe​​bug.c

以下是SegmentationFault的输出,例如:

在这里输入图像说明

然后,您可以获取回溯信息,显示分配等。