mirror of https://github.com/lukechilds/node.git
Browse Source
v8 is faster at setting object properties in JS than C++. Even when it requires calling into JS from native code. Make process._getActiveRequests() faster by doing this when populating the array containing request objects. Simple benchmark: for (let i = 0; i < 22; i++) fs.open(__filename, 'r', function() { }); let t = process.hrtime(); for (let i = 0; i < 1e6; i++) process._getActiveRequests(); t = process.hrtime(t); console.log((t[0] * 1e9 + t[1]) / 1e6); Results between the two: Previous: 4406 ns/op Patched: 690 ns/op 5.4x faster PR-URL: https://github.com/nodejs/node/pull/3375 Reviewed-By: James Snell <jasnell@gmail.com> Reviewed-By: Ben Noordhuis <ben@strongloop.com>process-exit-stdio-flushing
Trevor Norris
9 years ago
4 changed files with 57 additions and 4 deletions
@ -0,0 +1,10 @@ |
|||
'use strict'; |
|||
|
|||
const common = require('../common'); |
|||
const assert = require('assert'); |
|||
const fs = require('fs'); |
|||
|
|||
for (let i = 0; i < 12; i++) |
|||
fs.open(__filename, 'r', function() { }); |
|||
|
|||
assert.equal(12, process._getActiveRequests().length); |
Loading…
Reference in new issue