首页 > 代码库 > uLua异常处理

uLua异常处理

Unity热更新常采用uLua框架,这里首先分析uLua异常处理,在LuaState类里存在DoFile函数,当使用DoFile调用lua程序时如果发现有语法错误时,将在Unity控制台打印出错误,接下来分析如何实现其异常功能,首先分析uLua源代码

技术分享

luaL_loadbuffer() 函数将编译lua文件中的lua代码,如果没有错误,则返回0,同时将编译后的程序块压入虚拟栈中。如果不为0,说明有语法错误,然后调用了TrhowExceptionFromError函数,源代码如下:

技术分享

函数将会从堆栈取出错误消息(代码语法错误信息),然后抛出异常信息。

QQ347925343

Unity热更新视频教程:http://edu.51cto.com/course/10541.html


uLua异常处理