微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

可以附加到进程的Lua Debugger

我的公司有一个程序,它使用Lua嵌入其运行时,从磁盘加载.lua文件并重复执行其中定义的函数.

有没有办法附加到正在运行的进程并在.lua文件中设置断点? (我接受gdb风格的命令行调试作为Lua发行版的一部分,或者也许是提供类似Visual Studio的GUI断点的第三方IDE).

或者是因为运行时从磁盘加载随机文件的性质,我要求的是完全无意义的和不可取的?

编辑:由于Lua自己的debug.getinfo()功能可以确定给定功能的源文件,而且debug.sethook()允许为每个新的代码行输入回调,所以看起来并不荒谬.因此,从磁盘加载源代码是有道理的,并且能够告诉解释器何时从该文件执行特定的代码行.问题仍然存在:如何锁定到一个具有Lua解释器的现有进程,并注入我自己的跟踪功能(然后可以监视文件/行号对并暂停执行)?

解决方法

这是我经过多次搜索后使用的一种替代方法.如果你有一个加载lua的外部可执行文件,我可以在几分钟内完成工作. op是非常敏感的,它有一个交互式调试器,加载你的代码,你可以交互地放置调试点.它没有编辑器,但我使用scite或深红编辑器并启动可执行文件,您的主lua模块中的一行可启用调试器.

http://www.cushy-code.com/grld/ – 这个链接似乎已经死了

我已经转到eclipse.org/koneki/ldt,它有一个ide和集成调试器,推荐

心连心

原文地址:https://www.jb51.cc/lua/274610.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐