Closed
Description
I think the time has come to look into more-or-less rewriting threads
with the lessons-learned in mind, making the code clearer and bumping the version to 1.0.
To Do
- Focus API on observables and promises instead of event emitting
- Pool job can be promise-centric, Thread & Pool observable
- Use sync, async and possibly generator functions as worker code (instead of
done
callback) - Thread API should look more like what workerize does
- Deduplicate browser and node worker code (might wanna use tiny-worker)
- Make sure all previous features still work
Nice to have
- Try to write code in a more functional, but still performance-sensitive fashion
- SharedArrayBuffer polyfill for node + easy usage with the lib
- Nicer integration of map-reduce patterns and thread pooling
-
thread.send()
andthread.run()
are not the best names -
Pool.prototype.send()
might be better calledPool.prototype.queue()
- Solution to clean up after finished pool job / support sending data messages and distinct metadata messages to thread/job (Thread Pool: no nice way to do a cleanup #48)
- Turn config into something else than a singleton
- Proper API docs