使用valgrind观察luajit进程内存

💡 原文中文,约4400字,阅读约需11分钟。
📝

内容提要

执行lua代码时,将大量数据存入table并多次回收。使用valgrind观察内存申请和释放情况,发现count数量降低,但RES未减少。通过vgdb模式和gdb连接valgrind,截取镜像并使用ms_print解析内容。发现总内存和有用堆内存在不同时间点变化。

🎯

关键要点

  • 执行lua代码时,向table中存入大量数据并多次回收内存。

  • 使用valgrind观察内存申请和释放情况,发现count数量降低,但RES未减少。

  • 通过vgdb模式和gdb连接valgrind,截取内存镜像并使用ms_print解析内容。

  • 分析不同时间点的总内存和有用堆内存变化,发现内存管理存在问题。

➡️

继续阅读