如何debug web worker

Web Workers 为 Web 前端网页上的脚本提供了一种能在后台进程中运行的方法。一旦它被创建,Web Workers 就可以通过 postMessage 向任务池发送任务请求,执行完之后再通过 postMessage 返回消息给创建者指定的事件处理程序 ( 通过 onmessage 进行捕获 )。

例子:

<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
<title>Test Web worker</title> 
<script type="text/JavaScript"> 
function init(){ 
var worker = new Worker('js/compute.js'); 

worker.onmessage= function (event) { 

document.getElementById("result").innerHTML += 
event.data+"<br/>"; 
}; 
} 
</script> 
</head> 
<body onload="init()"> 
<div id="result"></div> 
</body> 
</html>

compute.js:

var i=0; 

function timedCount(){ 
 for(var j=0,sum=0;j<10000;j++) { 
    for(var i=0;i<1000;i++){ 
          sum+=i; 
    } 
 } 
 postMessage(sum); 
} 

postMessage("Before computing,"+new Date()); 
timedCount(); 
postMessage("After computing,"+new Date());

在web worker的source code里设置断点,选取Puase on start的checkbox:

之后就能像debug 普通javascript code一样debug worker代码:

要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏跟着阿笨一起玩NET

ASP.NET MVC Routing Debugger路由调试工具

官网地址:http://blog.csdn.net/sgear/article/details/6789882

792
来自专栏Petrichor的专栏

nano:基本操作

1544
来自专栏移动开发之家

Flutter完整开发实战详解(三、 打包与填坑篇)

作为系列文章的第三篇,继篇章一和篇章二之后,本篇将为你着重展示:Flutter开发过程的打包流程、APP包对比、细节技巧与问题处理。本篇主要描述的Flutter...

4323
来自专栏c#开发者

Asp.net dynamic Data web Site 之二创建第一个Web Site

Asp.net dynamic Data web Site 之二创建第一个Web Site 本专题介绍一个ASP.NET动态数据的网站的布局,其中包括这些文件...

4396
来自专栏CSDN技术头条

前端知识点总结——Vue

作用:将表达式执行的结果 输出当调用元素的 innerHTML 中;还可以将数据绑定到视图。

1052
来自专栏不知的专栏

反-反爬虫:用几行代码写出和人类一样的动态爬虫

本文将从 Phantomjs 动态爬虫介绍起,用3行代码傻瓜式完成基于 Casper 的动态爬虫来绕过对抗策略获取页面数据。

1.1K1
来自专栏君赏技术博客

百思不得姐数据挖掘第一篇

这是此文档的第一篇文章,写在之前要说的话。里面设计的技术点可能有些新人不是太了解,我只会说我遇到的难点和思路,文章也是想到那里写到那里。

573
来自专栏林德熙的博客

win10 uwp 如何创建修改保存位图 创建保存图片在 Image 控件使用WriteableBitmap 转换通过读写像素转换 CanvasBitmap

在 UWP 使用底层的图像渲染就是使用 Softwarebitmap ,这个类提供直接数据修改,可以使用这个类进行软渲染。实际上 Softwarebitmap ...

2631
来自专栏一个爱瞎折腾的程序猿

Ajax 文件上传

原文地址:http://blog.sina.com.cn/s/blog_5d64f7e3010127ns.html

2071
来自专栏Android 开发学习

TabLayout double click 标题回顶部

1582

扫码关注云+社区