用ulua也用了一段时间了,也遇到了不少的坑,在这里总结下,希望以后大家不要再踩。
1) 尽量将getLuaFunction()
获得的lua函数缓存起来重复使用,而不是每次调用lua函数都重新get一次,在确认不再使用这个函数的时候记得用Release()
释放掉,使用太多的getLuaFunction()
会占用lua的R表,影响程序稳定性,而且会导致编辑器下项目不能重启。
2)尽量在C#中避免使用newTable()
,如果用了请记得使用Release()
,理由同1.
3)尽量不要使用C#与ulua之间把luaTable
和luaFunction
这两个类型当参数传递,如果一定要传递函数,建议使用传递函数名的方法,让C#根据函数名去获取函数,因为传递多了会影响程序稳定,而且无法通过回收的办法消除这个影响。