var blob = new Blob([`
self.onmessage = function(e) {
postMessage('Msg from worker');
}
`]);
var blobURL = window.URL.createObjectURL(blob);
var worker = new Worker(blobURL);
worker.postMessage(null);
worker.onmessage = function(e) {
console.log(e.data);
}
- main.js
var worker = new Worker('worker.js');
worker.addEventListener('message', function(event) {
console.log('message received from worker => ', event.data);
}); // listen to error event of worker
worker.addEventListener('error', function(event) {
console.error('error received from worker => ', event);
});
worker.postMessage(null);
// worker.terminate(); // When worker needs to be terminated from main thread
- worker.js
self.onmessage = function(event) {
var x = 0;
for (var i = 0; i < 200000000; i++) {
x = x + i;
}
self.postMessage(x);
}
// self.close(); // When worker needs to terminate it self