Multi proccessing with workers in the browser.
npm install catilineFormerly known as Communist, Catiline is the same great web worker library but with a name you can use with your boss.
A JavaScript library all about workers. Workers should make your life easier not
harder and with Catiline launching a new worker is as simple as calling a
function, and it works the same across all (modern) browsers.
How easy? var worker = cw(myFunc) creates a worker, send it data with var response = worker.data(YOUR DATA);, response is a
promise.
It's that easy, for more in depth usage checkout the examples bellow or the
API page.
Want to use it? Grab the
development version
or production version from the dist folder.
For usage in addition to the API page and documentation,
I wrote a blog posts
about Catiline, or you can browse some demos:
- Parsing a dictionary
- Fractal Map, (April Mozilla Dev Derby Finalist)
- RTree Bounding Boxes
- Census Visualization
- Vector Map Tiles
- Unzipping files and reprojecting maps
Updates and changes are all in the changelog.
There is also a plugin list.
__Important:__ the file catiline.js or catiline.min.js should be a stand alone file hosted on the same domain as your web page, if you can't or need to bundle catiline but you need it to work on IE10, Opera, and Safari. You have to host the file "SHIM_WORKER.js" on the same domain as the html file
and set the path to it in a global variable SHIM_WORKER_PATH before you load catiline.
This grew out of my work with earlier versions
of this library and my differences in opinion with
Parallel.js's direction. There is
also a library doing very similar things called operative
