1.0.0 • Published 10 years ago
co-process v1.0.0
co-process
Concurrent producer/consumer processing for co with optional concurrency control.
Also see co-thread for a more lightweight but buffering implementation.
Example
var co = require('co');
var process = require('co-process');
co(function*(){
yield process(getData(), function*(data){
data = yield transform(data);
yield db.put(data);
});
})();
API
process(producer, consumer)
Let consumer
concurrently process work from producer
.
Whenever producer
yields data - and maximum concurrency isn't reached - it will be read immediately. Stop processing by yielding a falsy value.
Options:
- max: limit maximum concurrency
- timeout: kill workers after x milliseconds (default: 100)
Debugging
Set or add co-process
to the DEBUG
env variable to see how workers spawn, die and consume work.
Installation
$ npm install co-process
License
MIT
1.0.0
10 years ago