近日,为了解析XML,将LUA移入系统。刚开始还没有问题,后来在做界面切换压力测试时出现了如题“PANIC: unprotected error in call to Lua API (invalid key to 'next')”的问题,造成系统崩溃,于是开始定位问题。
首先百度了下,还真发现了个哥们:
前两天在用lua_next遍历一个lua表的时候遇到了:PANIC:unprotected error in call to Lua API (invalid keyto 'next') 仔细检查了下代码和堆栈信息,发现没有问题,但为什么会说遍历失败呢?
找到文档看了下,原来lua_tolstring只支持number和string类型

在压力测试中遇到LUA错误'PANIC: unprotected error in call to Lua API (invalid key to 'next')',导致系统崩溃。问题源于lua_tolstring只支持number和string类型的key,但在遍历自增索引的表时,key被转换为字符串,引发问题。检查代码发现全局变量表不断插入元素,未释放,可能导致内存溢出。解决方案是跟踪表大小并适当地管理内存。
最低0.47元/天 解锁文章
595

被折叠的 条评论
为什么被折叠?



