当前位置:  开发笔记 > 编程语言 > 正文

如何调试Web worker

如何解决《如何调试Webworker》经验,为你挑选了6个好方法。

我一直在使用HTML 5中的Web worker,并且正在寻找调试它们的方法.理想情况下像firebug或chrome调试器.有没有人对此有任何好的解决方案.无法访问控制台或DOM,它很难调试iffy代码



1> 小智..:

Dev Channel版本的Chrome支持通过注入假工作者实现调试工作人员,该工作实现模拟使用工作者客户端页面中的iframe的工作人员.您需要导航到Scripts窗格并在右侧的Workers侧栏上勾选Debug复选框,然后重新加载页面.然后,工作脚本将出现在页面脚本列表中.但是这种模拟有一定的局限性 - 因为工作者脚本将在客户端页面线程中运行,所以工作程序中任何长时间运行的操作都将冻结浏览器UI.


去```chrome:// inspect```似乎是最好的选择.它允许您为共享工作线程的运行时打开控制台.

2> daralthus..:

作为缺少console.log的快速解决方案,您可以使用 throw JSON.stringify({data:data})


当然,这会因为throw而停止执行调试.

3> user2519809..:

WebWorker可以像普通网页一样进行调试.Chrome通过chrome:// inspect /#workers为WebWorkers提供调试开发工具.

找到所需的正在运行的webworker,然后单击"检查".将打开一个专门用于该webworker的单独的开发工具窗口.官方[说明] [2]值得检查.



4> zeacuss..:

在chrome调试器中,在脚本选项卡中,滚动到工作人员面板,然后选择启动时暂停..它将允许您调试工作人员,并插入断点..但您可以在不同的窗口中执行所有操作



5> Ashwin Aggar..:

与Chrome v35一样

加载您的页面并打开Chrome开发者工具.

导航到" 来源"选项卡.

选中" 暂停开始"复选框,如下所示:

在Chrome开发工具中调试工作人员

重新加载页面,调试器将暂停在Web工作者中,但在新窗口中!

编辑:在较新版本的Chrome(我使用的是v39)中,工作人员位于"线程"选项卡下,而不是拥有自己的"工作人员"选项卡(如果有任何正在运行的工作人员,则"线程"选项卡将变为可见).


无法在chrome 38 ubuntu上找到它
也找不到它.甚至没有一个名为"工人"的子面板.

6> Philipp Claß..:

从Chrome 65开始,您现在可以简单地使用调试器的"步入"功能:

在此输入图像描述

有关更多详细信息,请参阅其发行说明.

推荐阅读
oDavid_仔o_880
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有