lix-website/themes/lix/assets/bootstrap/node_modules/pend
2024-04-26 22:49:34 -06:00
..
index.js initial commit of template 2024-04-26 22:49:34 -06:00
LICENSE initial commit of template 2024-04-26 22:49:34 -06:00
package.json initial commit of template 2024-04-26 22:49:34 -06:00
README.md initial commit of template 2024-04-26 22:49:34 -06:00
test.js initial commit of template 2024-04-26 22:49:34 -06:00

Pend

Dead-simple optimistic async helper.

Usage

var Pend = require('pend');
var pend = new Pend();
pend.max = 10; // defaults to Infinity
setTimeout(pend.hold(), 1000); // pend.wait will have to wait for this hold to finish
pend.go(function(cb) {
  console.log("this function is immediately executed");
  setTimeout(function() {
    console.log("calling cb 1");
    cb();
  }, 500);
});
pend.go(function(cb) {
  console.log("this function is also immediately executed");
  setTimeout(function() {
    console.log("calling cb 2");
    cb();
  }, 1000);
});
pend.wait(function(err) {
  console.log("this is excuted when the first 2 have returned.");
  console.log("err is a possible error in the standard callback style.");
});

Output:

this function is immediately executed
this function is also immediately executed
calling cb 1
calling cb 2
this is excuted when the first 2 have returned.
err is a possible error in the standard callback style.