diff --git a/lib/bcoin/utils.js b/lib/bcoin/utils.js index 5de833ce..44ac8387 100644 --- a/lib/bcoin/utils.js +++ b/lib/bcoin/utils.js @@ -372,9 +372,18 @@ utils.isEqual = function isEqual(a, b) { return true; }; -// TODO(indutny): use process.nextTick in node.js utils.nextTick = function nextTick(fn) { - setTimeout(fn, 0); + if (typeof setImmediate === 'function') { + setImmediate(fn); + return; + } + + if (typeof process === 'object' && process.nextTick) { + process.nextTick(fn); + return; + } + + setTimeout(fn, 1); }; function RequestCache() {