Function Threads
Additional layer for Node.js "worker_threads" module.
Library provides run
function, which takes a callback as an argument, runs it in a thread and returns a promise. Inside callback you can return promise or plain value(i.e. object, string and etc...).
Installation
Using npm:
$ npm i --save function-threads
Using yarn:
$ yarn add function-threads
Example
Make sure you're using Node.js >= v10.5.0
And always use --experimental-worker
flag when you run project, because worker-threads has been implemented under the hood which is in Experimental mode.
$ node --experimental-worker index.js
Example basic/index.js:
const Thread = ; Thread ;
All examples:
API
Thread.run()
Parameters
(Function): Returns Promise, you can use async/await
or just then/catch
to get value.
(object/array or primitive value): You can send custom data which will be used in a thread.
You can acces to this data using global.threadData
in function.
Returns
(Promise): Returns Promise, you can use async/await
or just then/catch
to get value.
Important
You can't access to any data outside of function, if you need to use a module, you should
require it in a callback. The only way to access data in a callback from outside is the useage
of second parameter. Closures will not work here.
Example
Work wit FileSystem index.js:
const Thread = ; const customData = fileName: 'test.txt'; Thread ;
And don't forgot to use Node >= v10.5.0 and --experimental-worker
flag.
$ node --experimental-worker index.js