lua 5.1 参考手册 汉译
设置搜索路径 package.path = '/aa/bb/cc/?.lua;/aa/bb/cc/?'
正则符号表
require('pkg.m')
require('pkg.M')
文件会被加载两次,对外的表现是 require函数 把参数和结果的映射放在package.loaded表里,且不区分大小写。映射的结果值是bool还是table取决于模块名是否和require参数一致。
调用module函数后,会自动创建_M, ... 即require的参数。 _M 中存储了三个key:_M, 自身 _NAME (module的第一个参数)(区分大小写) _PACKAGE(_NAME 去掉模块名,保留点号),模块创建后会屏蔽切换全局环境_G,可以使用下面的代码来继承之前的全局环境 module(...,package.seeall)
setenv 切换全局环境
collectgarbage ([opt [, arg]])
这个函数是垃圾收集器的通用接口。 通过参数 opt
它提供了一组不同的功能:
- "
collect
": 做一次完整的垃圾收集循环。 这是默认选项。 - "
stop
": 停止垃圾收集器的运行。 在调用重启前,收集器只会因显式的调用运行。 - "
restart
": 重启垃圾收集器的自动运行。 - "
count
": 以 K 字节数为单位返回 Lua 使用的总内存数。 这个值有小数部分,所以只需要乘上 1024 就能得到 Lua 使用的准确字节数(除非溢出)。 - "
step
": 单步运行垃圾收集器。 步长“大小”由arg
控制。 传入 0 时,收集器步进(不可分割的)一步。 传入非 0 值, 收集器收集相当于 Lua 分配这些多(K 字节)内存的工作。 如果收集器结束一个循环将返回 true 。 - "
setpause
": 将arg
设为收集器的 间歇率 (参见 )。 返回 间歇率 的前一个值。 - "
setstepmul
": 将arg
设为收集器的 步进倍率 (参见 )。 返回 步进倍率 的前一个值。 - "
isrunning
": 返回表示收集器是否在工作的布尔值 (即未被停止)。