taskwork
objectbuffer
taskwork | objectbuffer | |
---|---|---|
1 | 4 | |
10 | 163 | |
- | - | |
0.0 | 2.9 | |
over 2 years ago | 5 days ago | |
TypeScript | TypeScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
taskwork
-
isoworker - universal multithreading with main-thread dependencies, 6kB
Nice! I've done similar experimental work related to multithreading here https://github.com/TimvanScherpenzeel/taskwork. It combines it with a frame scheduler and re-usable web workers that can execute arbitrary tasks.
objectbuffer
-
JavaScript APIs You Don’t Know About
is a great example, which I also tried to (poorly) reimplement myself.
It creates a new data structures that behave as an object for the user but is backed by SharedArrayBuffer in order to support parallel computation over it.
- [0]: https://github.com/Bnaya/objectbuffer
- Web Crypto API
-
isoworker - universal multithreading with main-thread dependencies, 6kB
There is a lot of complexity involved in representing arbitrary javascript objects inside an ArrayBuffer whilst making them thread-safe. I'd first point to a library like objectbuffer. There's also more fixed struct-like options such as Google's FlatBuffers or buffer-backed-object.
What are some alternatives?
d2-checklist - Source for www.d2checklist.com, written in Angular and using the Bungie API
proposal-atomics-wait-async - "asynchronous atomic wait" for ECMAScript
isoworker - Isomorphic workerization with context support
comlink - Comlink makes WebWorkers enjoyable.
zip.js - JavaScript library to zip and unzip files supporting multi-core compression, compression streams, zip64, split files and encryption.
worktank-loader - WebPack plugin for WorkTank which enables you to execute whole files in a worker pool, transparently.
worktank - A simple isomorphic library for executing functions inside WebWorkers or Node Threads pools.
wasm-futures-executor - Executor for asynchronous task based on wasm web workers.
rinzler - An autonomous parallel processing engine for the browser.
wireworld-player - A multithreaded web app for loading and simulating instances of the Wireworld cellular automaton