function hello() local ret = debug.getinfo(1, "SluntLf") for k, v in pairs(ret) do io.write(k,":") if type(v) == "table" then for k, v in pairs(v) do io.write("\n ", k, ":", tostring(v)) end io.write("\n") else io.write(tostring(v), "\n") end endendhello()
输出如下:
nups:1nparams:0linedefined:1short_src:getinfo.luawhat:Luasource:@getinfo.luacurrentline:2func:function: 0x55933ff34f60activelines: 2:true 3:true 4:true 5:true 6:true 7:true 8:true 9:true 11:true 13:true 14:trueistailcall:falsename:hellolastlinedefined:14namewhat:globalisvararg:false
debug.getinfo总结
debug.getinfo用于获取指定协程或者当前协程的实行栈信息,指定格式不同返回的table中key也不同,如果指定的实行栈超过范围则返回nil,其它情形返回table。
