Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nodejs/node.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwwwzbwcom <zbwhome@outlook.com>2021-03-05 14:55:00 +0300
committerBenjamin Gruenbaum <benjamingr@gmail.com>2021-03-22 12:19:35 +0300
commit2c251ff33aeed9e6875acef610538765c832bc18 (patch)
tree6d16f9e6408a62f48a771bf29bd5c06825c4f058 /benchmark
parentbaa9e652142d0fa02ef21f561ddcdfda6372305f (diff)
stream: make Readable.from performance better
PR-URL: https://github.com/nodejs/node/pull/37609 Reviewed-By: Robert Nagy <ronagy@icloud.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Diffstat (limited to 'benchmark')
-rw-r--r--benchmark/streams/readable-from.js26
1 files changed, 26 insertions, 0 deletions
diff --git a/benchmark/streams/readable-from.js b/benchmark/streams/readable-from.js
new file mode 100644
index 00000000000..2dcf10ffef2
--- /dev/null
+++ b/benchmark/streams/readable-from.js
@@ -0,0 +1,26 @@
+'use strict';
+
+const common = require('../common');
+const Readable = require('stream').Readable;
+
+const bench = common.createBenchmark(main, {
+ n: [1e7],
+});
+
+async function main({ n }) {
+ const arr = [];
+ for (let i = 0; i < n; i++) {
+ arr.push(`${i}`);
+ }
+
+ const s = new Readable.from(arr);
+
+ bench.start();
+ s.on('data', (data) => {
+ // eslint-disable-next-line no-unused-expressions
+ data;
+ });
+ s.on('close', () => {
+ bench.end(n);
+ });
+}