跳到主要内容

zm.CollectGarbage 清理脚本内存

🎯功能

Lua的垃圾回收机制接口, 原型是collectgarbage()函数, 可通过第一个参数实现不同的操作, 默认为释放脚本内存功能

📜语法

结果 = zm.CollectGarbage([操作类型[, 附加参数]])

📥参数

参数数据类型解释
操作类型字符串可选, 省略默认为执行一个完整的垃圾回收周期, 详细请百度搜索lua collectgarbage
附加参数字符串可选, 改变回收步骤周期等, 详细请百度搜索lua collectgarbage

📤返回

数值型 , 返回执行结果, 由参数1决定返回内容

💡示例

Import "zm.luae" //导入插件,只需执行一次
zm.Init //初始化插件,只需执行一次

TracePrint "当前脚本占用内存", zm.GetScriptMemory(), "kb"

Dim a = {"紫猫", "学园", "https://zimaoxy.com"}
TracePrint "创建数组后占用内存", zm.GetScriptMemory(), "kb"

a = Null
TracePrint "删除数组后占用内存", zm.GetScriptMemory(), "kb"

zm.CollectGarbage()

TracePrint "执行清理内存后占用内存", zm.GetScriptMemory(), "kb"

📘备注

  • 不建议频繁调用, 会降低脚本执行效率, 一般在加载大型资源前调用一次, 例如读取很大的一个文件之类的
  • V3.1852: 初次加入命令