lua性能优化之memory usage profile

目的:由于原生的unity profile只是对c#做了内存调试支持,在tolua,ulua,slua等lua项目中为了方便检测lua端的内存泄漏以及内存分布,特此写下本篇博客以防自己忘记,同时也给看到这篇博客的同学一点帮助。

前期准备:起初是准备用lua直接开撸的,也参考了网上的一些资料,网址为:http://www.cnblogs.com/yaukey/p/unity_lua_memory_leak_trace.html,这个博客就是用lua来写的一个蛮好用的内存追踪工具。起初也决定直接拿过来开用,但是后来想想lua运行时本身也会影响luastate,而且lua里面没有提供很好的内存计算方式,最终统计出来的内存会有偏差,所以就决定用lua c api写一个库供lua调用。于是就看到了云风大大的Lua内存泄露检查工具,网址为:https://blog.codingnow.com/2012/12/lua_snapshot.html,起初以为就此完事了,看了后才发现云风大大的工具只是将结果统计在一张表里面,并且变量地址作为key,引用关系作为value供我们使用,所以就必须在这个工具的基础上做扩展了。

新工具编写步骤
1.扩展云风大大的snapshot库并命名为mm(既是memory monitor简称)。具体方法参见博客https://blog.csdn.net/zjz520yy/article/details/79777392
2.编译mm库到tolua中。具体方法参见博客https://blog.csdn.net/zjz520yy/article/details/79777408
3.编写memory editor分析工具。具体方法参见博客https://blog.csdn.net/zjz520yy/article/details/79777397

猜你喜欢

转载自blog.csdn.net/zjz520yy/article/details/79668240