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 objectterminate()
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