Skip to content

asthesky/co-agent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

co-agent

Build Status

in co warp deal with asynchronous concurrency

Installation

$ npm install co-agent

Usage

reference module:

const CoAgent = require('co-agent');

parameters configure and generating instance:

const coagent = new CoAgent({
    pool: 20,
    safe: true,
    timeout: 5000
});

use instance wrap generator function or other iterator object:

// wrap can use genrator , genrator function and others can change to ierator
coagent.wrap(function* () {
    for (var i = 0; i < 100; i++) {
        // aysnc can use pormise and genrator
        yield aysnc();
    }
}).then(function(data){ 
    //data is an Array of length 100 
 });

coagent.on('resolved',function(data){
    var promise = data.promise;
     var result = data.result;
     //promise.label index
})
coagent.on('resolved',function(data){
    var promise = data.promise;
     var error = data.error;
     //promise.label index
})

coagent.wrap return a promise and each iterator next return is considered an item of an array;

Options

pool: concurrency exec max length;

safe: false one async exec error return promise rejected, true just this return data is null;

timeout: every async exec timeout setting

License

MIT

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published