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

uLua异常处理

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

uLua异常处理

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


QQ群:347925343


相关文章:

  • 2022-02-27
  • 2021-12-18
  • 2021-10-22
猜你喜欢
  • 2021-04-05
  • 2021-06-12
  • 2021-11-13
  • 2021-12-12
  • 2021-07-28
  • 2022-12-23
  • 2021-09-04
相关资源
相似解决方案