co-process

1.0.0 • Public • Published

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

Readme

Keywords

none

Package Sidebar

Install

npm i co-process

Weekly Downloads

1

Version

1.0.0

License

MIT

Last publish

Collaborators

  • juliangruber