diff options
Diffstat (limited to 'lib/timers.js')
-rw-r--r-- | lib/timers.js | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/lib/timers.js b/lib/timers.js index ad2d89d7bf..dc9b875ec3 100644 --- a/lib/timers.js +++ b/lib/timers.js @@ -41,7 +41,6 @@ const { validateTimerDuration } = require('internal/timers'); const internalUtil = require('internal/util'); -const { createPromise, promiseResolve } = process.binding('util'); const util = require('util'); const { ERR_INVALID_CALLBACK } = require('internal/errors').codes; const debug = util.debuglog('timer'); @@ -439,11 +438,9 @@ function setTimeout(callback, after, arg1, arg2, arg3) { } setTimeout[internalUtil.promisify.custom] = function(after, value) { - const promise = createPromise(); - const timeout = new Timeout(promise, after, [value], false); - active(timeout); - - return promise; + return new Promise((resolve) => { + active(new Timeout(resolve, after, [value], false)); + }); }; exports.setTimeout = setTimeout; @@ -452,7 +449,7 @@ exports.setTimeout = setTimeout; function ontimeout(timer) { const args = timer._timerArgs; if (typeof timer._onTimeout !== 'function') - return promiseResolve(timer._onTimeout, args[0]); + return Promise.resolve(timer._onTimeout, args[0]); if (!args) timer._onTimeout(); else @@ -659,7 +656,7 @@ function tryOnImmediate(immediate, oldTail, count, refCount) { function runCallback(timer) { const argv = timer._argv; if (typeof timer._onImmediate !== 'function') - return promiseResolve(timer._onImmediate, argv[0]); + return Promise.resolve(timer._onImmediate, argv[0]); if (!argv) return timer._onImmediate(); Reflect.apply(timer._onImmediate, timer, argv); @@ -738,9 +735,7 @@ function setImmediate(callback, arg1, arg2, arg3) { } setImmediate[internalUtil.promisify.custom] = function(value) { - const promise = createPromise(); - new Immediate(promise, [value]); - return promise; + return new Promise((resolve) => new Immediate(resolve, [value])); }; exports.setImmediate = setImmediate; |