Browse Source

lib: add constant kMaxCallbacksUntilQueueIsShortened

Currently the maximum number of tick is duplicated in two places. This
commit introduces a constant that both can use.

PR-URL: https://github.com/nodejs/node/pull/11199
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
v6
Daniel Bevenius 8 years ago
committed by James M Snell
parent
commit
aa05209d6d
  1. 10
      lib/internal/process/next_tick.js

10
lib/internal/process/next_tick.js

@ -1,5 +1,11 @@
'use strict';
// This value is used to prevent the nextTickQueue from becoming too
// large and cause the process to run out of memory. When this value
// is reached the nextTimeQueue array will be shortend (see tickDone
// for details).
const kMaxCallbacksUntilQueueIsShortened = 1e4;
exports.setup = setupNextTick;
function setupNextTick() {
@ -96,7 +102,7 @@ function setupNextTick() {
// callback invocation with small numbers of arguments to avoid the
// performance hit associated with using `fn.apply()`
_combinedTickCallback(args, callback);
if (1e4 < tickInfo[kIndex])
if (kMaxCallbacksUntilQueueIsShortened < tickInfo[kIndex])
tickDone();
}
tickDone();
@ -120,7 +126,7 @@ function setupNextTick() {
// callback invocation with small numbers of arguments to avoid the
// performance hit associated with using `fn.apply()`
_combinedTickCallback(args, callback);
if (1e4 < tickInfo[kIndex])
if (kMaxCallbacksUntilQueueIsShortened < tickInfo[kIndex])
tickDone();
if (domain)
domain.exit();

Loading…
Cancel
Save