在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
http://blog.csdn.net/vermilliontear/article/details/50851045 http://blog.csdn.net/vermilliontear/article/details/50865156
Q:什么是活动函数?A:程序中被调用但还未执行完成的函数。
Q:什么是调用栈?A:Lua存储活动函数所使用的栈。每个线程都有自己独立的调用栈。 Q:什么是调用栈的级别?A:调用调试库函数的函数的栈级别是1,调用该函数的函数的栈级别是2,以此类推。
Q:如何查看调用栈信息?A:
Q:如何查看函数信息?A:
Q:如何调试函数局部变量信息?A:
Q:如何调试”metatable”信息?A:
Q:如何调试”userdata”信息?A:
附加:1、尽可能只在调试过程中使用调试库中的函数。首先,库中一些函数的性能并不卓越。其次,它打破了Lua语言中一些基本的规则,比如函数中定义的局部变量无法在其外部被访问。最后,你一定不希望在你的最终产品中见到它的身影,所以你可以使用,
所以要查看”Tail Calls”的包裹函数信息,请直接指定函数名。
Q:如何调试”Closure”的”upvalue”信息?A:
Q:如何追踪程序的运行?A:
Q:如何查看Lua的注册表信息?A:
Q:如何创建一个程序分析器?A:调式库除了用于调式以外还可以用于完成其他任务,这种常见的任务就是分析。对于一个实时的分析来说,最好使用C接口来完成。对于每一个钩子函数其使用的Lua调用代价太大,并且通常会导致测量的结果不准确。然而,对于计数分析来说,Lua可以很好的胜任。
附加:1、在钩子函数内,你可以调用”debug.getinfo()”,指定栈级别为2, 来获得正在运行的函数的详细信息(”debug.getinfo()”的栈级别为0,钩子函数的栈级别为1)。
|
请发表评论