| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent 76eaf24 commit 471c59b
2 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -5,25 +5,36 @@ const Writable = require('stream').Writable; | |||
| 5 | 5 | ||
| 6 | 6 | const bench = common.createBenchmark(main, { | |
| 7 | 7 | n: [2e6], | |
| 8 | - sync: ['yes', 'no'] | ||
| 8 | + sync: ['yes', 'no'], | ||
| 9 | + writev: ['yes', 'no'], | ||
| 10 | + callback: ['yes', 'no'] | ||
| 9 | 11 | }); | |
| 10 | 12 | ||
| 11 | - function main({ n, sync }) { | ||
| 13 | + function main({ n, sync, writev, callback }) { | ||
| 12 | 14 | const b = Buffer.allocUnsafe(1024); | |
| 13 | 15 | const s = new Writable(); | |
| 14 | 16 | sync = sync === 'yes'; | |
| 15 | - s._write = function(chunk, encoding, cb) { | ||
| 17 | + | ||
| 18 | + const writecb = (cb) => { | ||
| 16 | 19 | if (sync) | |
| 17 | 20 | cb(); | |
| 18 | 21 | else | |
| 19 | 22 | process.nextTick(cb); | |
| 20 | 23 | }; | |
| 21 | 24 | ||
| 25 | + if (writev === 'yes') { | ||
| 26 | + s._writev = (chunks, cb) => writecb(cb); | ||
| 27 | + } else { | ||
| 28 | + s._write = (chunk, encoding, cb) => writecb(cb); | ||
| 29 | + } | ||
| 30 | + | ||
| 31 | + const cb = callback === 'yes' ? () => {} : null; | ||
| 32 | + | ||
| 22 | 33 | bench.start(); | |
| 23 | 34 | ||
| 24 | 35 | let k = 0; | |
| 25 | 36 | function run() { | |
| 26 | - while (k++ < n && s.write(b)); | ||
| 37 | + while (k++ < n && s.write(b, cb)); | ||
| 27 | 38 | if (k >= n) | |
| 28 | 39 | bench.end(n); | |
| 29 | 40 | } | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -9,6 +9,8 @@ runBenchmark('streams', | |||
| 9 | 9 | 'kind=duplex', | |
| 10 | 10 | 'n=1', | |
| 11 | 11 | 'sync=no', | |
| 12 | + 'writev=no', | ||
| 13 | + 'callback=no', | ||
| 12 | 14 | 'type=buffer', | |
| 13 | 15 | ], | |
| 14 | 16 | { NODEJS_BENCHMARK_ZERO_ALLOWED: 1 }); | |
| Back | FazBrowse Home | New Git URL |
0 commit comments