不过对应的 Lua 代码行是能够得到的。
所以你也可以考虑实现类似于 sourcemap 的机制,把 loadstring 中的行号和用户输入的 Lua 代码行号对应起来。(前提是你要事先把用户输入的 Lua 代码 pretty format 了,如果loadstring 加载之后的代码像压缩后的 js 脚本一样只有一行,有 sourcemap 也没用……)
不过这么一来,不能照搬现有的火焰图生成方式,需要插入一个翻译的流程。
在 2017年6月25日星期日 UTC+8下午4:52:25,Zexuan Luo写道:
基本上不行。火焰图生成过程中的调用栈里面拿不到 loadstring 内具体定义的函数名。
在 2017年6月24日星期六 UTC+8上午10:51:52,cheng ye写道: