如何使用mtrace函数来追踪内存使用

linux

C++

方式/步调

  1. 1

    起首挪用setenv设置情况变量MALLOC_TRACE,然后再挪用mtrace()开启记实内存

    d000baa1cd11728b931c5a52c7fcc3cec3fd2c89.jpg
  2. 2

    编译程序文件,然后运行生当作的可执行文件

    ac6eddc451da81cbdebc55bd5d66d0160924316c.jpg
  3. 3

    终端执行号令ls -l来查看当前的目次环境,可以发现生当作了trace.log文件

    0b46f21fbe096b63a260882003338744ebf8ac41.jpg
  4. 4

    生当作的trace.log文件的内容如下图所示

    8cb1cb13495409237212b50e9d58d109b3de4943.jpg
  5. 5

    挪用函数malloc申请内存,挪用free函数释放内存

    500fd9f9d72a6059781d306a2734349b033bbab5.jpg
  6. 6

    编译文件,执行生当作的可执行程序,再次查看生当作的文件trace.log, 其记实了申请和释放内存的信息(+为申请内存,-为释放内存)

    7c1ed21b0ef41bd54ea33e845eda81cb38db3dca.jpg
  7. 7

    程序文件再次添加申请内存的代码段,可是不释放内存

    b151f8198618367ac095aead21738bd4b31ce5a6.jpg
  8. 8

    再次编译文件执行生当作的可执行程序,然后查看生当作的文件trace.log, 可以发现申请了内存,可是没有释放内存的信息

    0df3d7ca7bcb0a46a23c5a496463f6246b60afa0.jpg
  • 发表于 2019-10-30 17:06
  • 阅读 ( 938 )
  • 分类:其他类型

0 条评论

请先 登录 后评论
admin
admin

0 篇文章

作家榜 »

  1. xiaonan123 189 文章
  2. 汤依妹儿 97 文章
  3. luogf229 46 文章
  4. jy02406749 45 文章
  5. 小凡 34 文章
  6. Daisy萌 32 文章
  7. 我的QQ3117863681 24 文章
  8. 华志健 23 文章

联系我们:uytrv@hotmail.com 问答工具