一:错误处理

错误处理分为两大部分
——语法错误
Lua(十八)——错误处理,垃圾回收_Lua 热更新     Lua(十八)——错误处理,垃圾回收_热更新_02

 

 

——运行错误
Lua(十八)——错误处理,垃圾回收_热更新_03

 

错误处理的函数:assert函数
assert函数先检查第一个参数
若为true,则不做任何输出
若为false,则把第二个参数作为错误信息输出
Lua(十八)——错误处理,垃圾回收_热更新_04


 二:垃圾回收

在Lua中利用一个垃圾收集器来收集所有死对象(访问不到的对象),垃圾收集器的实现利用了一个叫增量标记-扫描收集器的东西,它使用两个数字来控制垃圾收集循环: 垃圾收集器间歇率垃圾收集器步进倍率, 这两个数字都使用百分数为单位。垃圾收集器间歇率控制着垃圾收集器多长时间后开启一次收集工作,垃圾收集器步进倍率(默认为200)控制着垃圾收集器运作速度相对于内存分配速度的倍率

Lua采用自动内存管理,但是它提供了一些垃圾回收的方法供我们使用
collectgarbage("collect"):强制做一次完整的垃圾收集工作
collectgarbage("count")::以 K 字节数为单位返回Lua使用的总内存数,这个值有小数部分,只需要乘上1024就能得到Lua使用的准确字节数

 

——————————一个垃圾回收的例子
Lua(十八)——错误处理,垃圾回收_Lua 热更新_05