mirror of
https://github.com/musix-org/musix-oss
synced 2024-11-10 11:20:19 +00:00
42 lines
973 B
Markdown
42 lines
973 B
Markdown
# Pend
|
|
|
|
Dead-simple optimistic async helper.
|
|
|
|
## Usage
|
|
|
|
```js
|
|
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.
|
|
```
|