Skip to content

aerios/throttle-exec

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

throttle-exec

A simple job-queue manager based on Promise mechanims

Installation

$ npm install throttle-exec

Usage

var ThrottleEngine = require("throttle-exec")
var maximumProcess = 10
var throttleInstance = new ThrottleEngine(maximumProcess) 

Function that perform asynchronous logic

var wrappedAsync = throttleInstance.wrap(function(p1,p2){
    return new Promise(function(resolve,reject){
        var ret = {}
        // some logic
        resolve(ret)
    })
})
wrappedAsync("http://npmjs.org","http://google.com").then(function(ret){
    console.log(ret)
}).catch(console.error)

Function that perform synchronous logic

var wrappedSync = throttleInstance.wrap(function(p1,p2){
    
    // some logic
    return p1 * p2;
})
wrappedSync(5,2).then(function(result){
    console.log(result) // 10
}).catch(console.error) // any error will be thrown from try and trigger reject

GitHub

https://github.com/aerios/throttle-exec

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published