使用SpiderMonkey调试API冻结和恢复执行



我想为Firefox实现我自己的GWT插件,但是我有一个问题。考虑一下,我们有一个函数,它导致程序暂停,直到在IDE上运行的远程调试器说"好,您可以继续"。据我所知,这在旧的NPAPI中是可能的,至少旧的插件使用NPAPI。我猜它能够做同步套接字I/O。现在NPAPI已弃用,GWT插件无法工作。作为替代,我找到了JS调试器API,我希望它能有所帮助。不幸的是,文档非常贫乏。我试着学习Firebug,因为我认为它使用了调试API,但我什么都不懂。我真正需要的是当它到达某个函数调用和信号时冻结执行。然后我需要向Firefox返回信号以恢复执行。调试器API允许这样做吗?如果是这样,我在哪里可以找到用于所描述目标的代码片段?

Firebug,即使在2.0中,大多数情况下也不直接使用调试器API,而是使用远程调试协议(RDP)进行通信,这听起来绝对像是一个不错的选择。

如果你想手工做更多的事情,看看RDP后端的实现。特别是,暂停/恢复执行(在Debugger API中没有显式支持)是通过嵌套的事件循环完成的。

最新更新