Skip to content

Instantly share code, notes, and snippets.

@youpy
Created February 12, 2010 18:55
Show Gist options
  • Select an option

  • Save youpy/302855 to your computer and use it in GitHub Desktop.

Select an option

Save youpy/302855 to your computer and use it in GitHub Desktop.
var worker = {};
worker.start = function(uri, data) {
var deferred = new Deferred();
var worker = new Worker(uri);
worker.onmessage = function(event) { deferred.call(event); };
worker.onerror = function(event) { deferred.fail(event); };
worker.postMessage(data);
deferred.canceller = function() { worker.terminate() };
return deferred;
}
worker.start("hello_worker.js", "world").next(function(event) {
alert(event.data);
});
// hello_worker.js
//
// onmessage = function(event) {
// postMessage("hello " + event.data);
// };
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment