我正在为 Ruby 编写一个基于 Web 的调试器,但是为了做到这一点,我需要能够从服务器端的 Ruby 程序中调用 Ruby 调试器。这种方法是否可行?是否有过类似的实现?
最终产品将允许使用 Web 浏览器编辑、执行和单步运行 Ruby 代码。要调试的 Ruby 代码将在服务器端进行 "eval"。
有一个 stackoverflow 用户向我指出了正确的方向,建议我使用 popen 或 expect。我现在已经尝试了这两种方法,但遇到了以下问题: popen:当等待控制台时,必须使用超时块来信号结束调试控制台的输出(命令行终端可以检测到,那么为什么 Ruby 不能)。
expect:在下面的程序中,调试器输入与调试器不同步。为什么会这样?
最终产品将允许使用 Web 浏览器编辑、执行和单步运行 Ruby 代码。要调试的 Ruby 代码将在服务器端进行 "eval"。
有一个 stackoverflow 用户向我指出了正确的方向,建议我使用 popen 或 expect。我现在已经尝试了这两种方法,但遇到了以下问题: popen:当等待控制台时,必须使用超时块来信号结束调试控制台的输出(命令行终端可以检测到,那么为什么 Ruby 不能)。
expect:在下面的程序中,调试器输入与调试器不同步。为什么会这样?