Create a worker to execute a script in a dedicated thread.

If onmessage handler execution fail then worker call onerror handler. When thread terminates and Terminate handler assigned worker thread call onterminate handler.

In handlers you can use 2 methods:

  • postMessage(message) for posting messages from worker thread. You can get this message by function getMessage of worker object
  • terminate() for terminating current worker thread

  
      //The flow:
const Worker = require('@unitybase/base').Worker
// create a new thread in suspended state.
// Evaluate a body of a function runSomething into newly created JavaScript context
let w =  new Worker({name: 'WorkerName', onmessage: runSomething});
// resume the thread and call a `onmessage` function with parameter, passed to postMessage
w.postMessage({action: 'start', param: 'bla-bla'}); // wake up the thread and call a
  

Classes