Skip to content

Instantly share code, notes, and snippets.

@josnidhin
Created April 22, 2014 04:53
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save josnidhin/11165685 to your computer and use it in GitHub Desktop.
Save josnidhin/11165685 to your computer and use it in GitHub Desktop.
Javascript: Printing to Console from Web Worker
// create the worker object
var worker = new Worker( "worker.js" );
// add message event listener
worker.addEventListener( 'message', function( event ) {
switch ( event.data.type ) {
case "debug":
console.log( event.data.message );
break;
case "result":
// process event.data.value
break;
}
};
// add error event listener
worker.addEventListener( 'error', function( e ) {
console.log( "Worker Error: " + e );
});
var data = {}; // holds the data to be passed to worker
worker.postMessage( data );
// add message event listener
self.addEventListener( 'message', function( event ) {
// process the data and return the result
self.postMessage({
type: 'result',
value: process( event.data )
});
};
// process the data
var process = function( data ){
var result;
self.postMessage({
type: "debug",
message: "Processing Started."
});
// compute result
return result;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment