【发布时间】:2016-11-02 14:24:53
【问题描述】:
我的任务是在每个页面上创建一个专用的 webworker 实例,以在给定的时间间隔内处理发送服务器请求,而不管用户在哪个页面上。由于这必须适用于任何浏览器,因此不能选择共享网络工作者(因此必须为每个页面加载它)。
我创建了一个脚本,以为我一直在创建一个 worker,但最近我被告知实际上并没有创建 worker,尽管该脚本正在执行 webworker 的预期功能。
webworker 的基本功能是这样的:
onPageLoad {
function sendHeartbeat() {
sendRequest(URL);
}
function startHeartbeat() {
if(timeToSendHeartbeat) {
sendHeartbeat();
} else {
setInterval(timeRemaining, sendHeartbeat());
}
}
}
这让我开始思考使用网络工作者是否是最佳选择。使用我缺少的网络工作者是否有一些固有的优势?使用网络工作者是否比将脚本附加到每个页面并按原样运行效率更高?还是这个应用程序不适合网络工作者?
【问题讨论】:
标签: javascript performance web-worker