process: use a class for nextTick resources · nodejs/node@afa02fb · GitHub
Skip to content

Commit afa02fb

Browse files
mcollinaaduh95
authored andcommitted
process: use a class for nextTick resources
The resource created for each `process.nextTick()` call was an object literal with three computed symbol keys. V8 builds such literals from a boilerplate that only covers the static keys, so the symbol-keyed properties end up in a separate property array allocated per tick, and each computed-key store goes through the runtime. Construct the resource through a class instead, so that every tick object shares one map with all five fields in-object. process/next-tick-breadth-args.js: ~1.58M -> ~1.95M ops/s (+23%). Signed-off-by: Matteo Collina <hello@matteocollina.com> PR-URL: #66415 Reviewed-By: Robert Nagy <ronagy@icloud.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>
1 parent fa7efaf commit afa02fb

1 file changed

Lines changed: 14 additions & 7 deletions

File tree

‎lib/internal/process/task_queues.js‎

Lines changed: 14 additions & 7 deletions

0 commit comments

Comments
 (0)