summaryrefslogtreecommitdiff
path: root/lib/internal/process
diff options
context:
space:
mode:
authorAnatoli Papirovski <anatoli.papirovski@postmates.com>2019-06-06 09:18:41 +0200
committerAnatoli Papirovski <anatoli.papirovski@postmates.com>2019-06-10 07:49:40 +0200
commitcde3928a10627510ae0aee7728e5498a95235482 (patch)
tree71d6d5ffc1e0db0e4e40df82d9a3204e563bb82e /lib/internal/process
parent5bad51406dfd49c62d9960508834627d67fbf229 (diff)
downloadandroid-node-v8-cde3928a10627510ae0aee7728e5498a95235482.tar.gz
android-node-v8-cde3928a10627510ae0aee7728e5498a95235482.tar.bz2
android-node-v8-cde3928a10627510ae0aee7728e5498a95235482.zip
process: improve queueMicrotask performance
Optimize the hot code paths of queueMicrotask by not creating unnecessary objects, not looking up properties on frozen primordials, etc. PR-URL: https://github.com/nodejs/node/pull/28093 Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Gus Caplan <me@gus.host> Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Diffstat (limited to 'lib/internal/process')
-rw-r--r--lib/internal/process/task_queues.js8
1 files changed, 3 insertions, 5 deletions
diff --git a/lib/internal/process/task_queues.js b/lib/internal/process/task_queues.js
index 1f203c86ed..34e925aaf5 100644
--- a/lib/internal/process/task_queues.js
+++ b/lib/internal/process/task_queues.js
@@ -128,15 +128,13 @@ function nextTick(callback) {
}
let AsyncResource;
+const defaultMicrotaskResourceOpts = { requireManualDestroy: true };
function createMicrotaskResource() {
// Lazy load the async_hooks module
- if (!AsyncResource) {
+ if (AsyncResource === undefined) {
AsyncResource = require('async_hooks').AsyncResource;
}
- return new AsyncResource('Microtask', {
- triggerAsyncId: getDefaultTriggerAsyncId(),
- requireManualDestroy: true,
- });
+ return new AsyncResource('Microtask', defaultMicrotaskResourceOpts);
}
function runMicrotask() {