0.0.8 • Published 4 years ago

rpc-worker-threads v0.0.8

Weekly downloads
9
License
MIT
Repository
github
Last release
4 years ago

IMPORTANT

This library is not ready to production use, but you can experiment with it on your pet projects 😊

rpc-worker-threads

How to use

const { isMainThread } = require('worker_threads');

if (isMainThread) {
  const { RPCWorker } = require('rpc-worker-threads');

  async function init() {
    const rpcWorker = new RPCWorker(__filename);
    await rpcWorker.init();

    const result = await rpcWorker.send({
      name: 'myFn',
      data: 'World',
    });

    console.log(result); // Hello World!
  }

  init();
} else {
  const { RPCWorker } = global;

  RPCWorker.addHandler('myFn', (v) => {
    return `Hello ${v}!`;
  });
}

API

RPCWorker(filename: string, options?: WorkerOptions | undefined) extends Worker

RPCWorker.send(opts): Promise

RPCWorker.setDefaultExecutionTimeout(timeout: number)

RPC

PRC.addHandler(fnName: string, callback: Function)

RPCWorkersPool(poolOpts, filename: string, options?: WorkerOptions | undefined)

RPCWorkersPool.send(opts): Promise

RPCWorkersPool.close(): Promise

Custom pooling example

Look example here

0.0.8

4 years ago

0.0.7

4 years ago

0.0.5

4 years ago

0.0.4

4 years ago

0.0.3

4 years ago

0.0.2

4 years ago

0.0.1

4 years ago