lua在Unity的热更新中,一般是每次客户端启动的时候检查是否有更新,然后加载。
如果要在运行期热更,跟服务端做不停服热更(比如java 用类构造启动java脚本本身,或者luaJ)是一个道理。
有几个地方:
1.lua查询路径的热更。这个就简单,直接在第一个启动的lua文件里 path..就好了。
2. 可以重新启动luastate,这种方式比较简单。
3.如果不重启luastate,则需要
更新lua文件后,要暂停C#调用lua。
然后手动清除内存中已读进去的lua的byte字节流。
然后再重新加载新的lua文件。
4. 多用require方式。
原文地址:https://www.cnblogs.com/sundayofit/p/8884785.html
时间: 2024-10-08 14:08:55