Skip to content
This repository was archived by the owner on Feb 9, 2020. It is now read-only.

Commit 88674c1

Browse files
committed
add an Async way to run stuff
imma prob make this better
1 parent 93faf2a commit 88674c1

1 file changed

Lines changed: 22 additions & 0 deletions

File tree

src/pocketnode/utils/Async.js

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
/**
2+
* Async
3+
* run stuff in async via setImmediate
4+
* @param cb {Function} run this in async
5+
* @return {Promise<any>}
6+
*/
7+
function Async(cb){
8+
return new Promise((resolve, reject) => {
9+
new Promise((done, fail) => {
10+
setImmediate(() => {
11+
try {
12+
cb();
13+
done();
14+
} catch(e) {
15+
fail(e);
16+
}
17+
});
18+
}).then(() => resolve()).catch(e => reject(e));
19+
});
20+
}
21+
22+
module.exports = Async;

0 commit comments

Comments
 (0)