!7
html {
if (eq(uri, "/worker.js"))
ret [[
postMessage("WORKING! Watch your CPU.");
var startTime = new Date();
var i = 0;
while (true) {
i = i+1;
if ((i % 1000000) == 0) {
var ms = new Date()-startTime;
postMessage("Counted to: " + i + " in " + ms + " ms");
}
}
]];
ret htitle("Web Worker Test")
+ hbody(
p("Count numbers: " + hfulltag("output", "", id := "result"))
+ hjavascript([[
function go() {
if (typeof(Worker) === "undefined") {
document.getElementById("result").innerHTML = "Sorry, your browser does not support Web Workers...";
return;
}
document.getElementById("result").innerHTML = "Making web worker";
var worker = new Worker($LINK);
worker.onmessage = function(event) {
document.getElementById("result").innerHTML = event.data;
};
document.getElementById("result").innerHTML = "Worker made, starting";
worker.postMessage();
}
]]).replace("$LINK", jsQuote(relativeRawBotLink(programID(), "worker.js"))), onLoad := "go()");
}