http: convert utcDate to use setTimeout
A sort-of follow-up to https://github.com/nodejs/node/pull/17704, this removes the last internal use of enroll(). PR-URL: https://github.com/nodejs/node/pull/17800 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Evan Lucas <evanlucas@me.com> Reviewed-By: Minwoo Jung <minwoo@nodesource.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>
This commit is contained in:
parent
8578fe22a9
commit
f94eec0218
@ -1,20 +1,21 @@
|
||||
'use strict';
|
||||
|
||||
const timers = require('timers');
|
||||
const { setUnrefTimeout } = require('internal/timers');
|
||||
|
||||
var dateCache;
|
||||
function utcDate() {
|
||||
if (!dateCache) {
|
||||
const d = new Date();
|
||||
dateCache = d.toUTCString();
|
||||
timers.enroll(utcDate, 1000 - d.getMilliseconds());
|
||||
timers._unrefActive(utcDate);
|
||||
|
||||
setUnrefTimeout(resetCache, 1000 - d.getMilliseconds());
|
||||
}
|
||||
return dateCache;
|
||||
}
|
||||
utcDate._onTimeout = function() {
|
||||
|
||||
function resetCache() {
|
||||
dateCache = undefined;
|
||||
};
|
||||
}
|
||||
|
||||
function ondrain() {
|
||||
if (this._httpMessage) this._httpMessage.emit('drain');
|
||||
|
Loading…
x
Reference in New Issue
Block a user