File tree Expand file tree Collapse file tree 1 file changed +56
-0
lines changed Expand file tree Collapse file tree 1 file changed +56
-0
lines changed Original file line number Diff line number Diff line change 1+ 'use strict' ;
2+ const common = require ( '../common.js' ) ;
3+ const {
4+ Duplex,
5+ Readable,
6+ Transform,
7+ Writable,
8+ } = require ( 'stream' ) ;
9+
10+ const bench = common . createBenchmark ( main , {
11+ n : [ 1e6 ] ,
12+ kind : [ 'duplex' , 'readable' , 'transform' , 'writable' ]
13+ } ) ;
14+
15+ function main ( { n, kind } ) {
16+ switch ( kind ) {
17+ case 'duplex' :
18+ new Duplex ( { } ) ;
19+ new Duplex ( ) ;
20+
21+ bench . start ( ) ;
22+ for ( let i = 0 ; i < n ; ++ i )
23+ new Duplex ( ) . destroy ( ) ;
24+ bench . end ( n ) ;
25+ break ;
26+ case 'readable' :
27+ new Readable ( { } ) ;
28+ new Readable ( ) ;
29+
30+ bench . start ( ) ;
31+ for ( let i = 0 ; i < n ; ++ i )
32+ new Readable ( ) . destroy ( ) ;
33+ bench . end ( n ) ;
34+ break ;
35+ case 'writable' :
36+ new Writable ( { } ) ;
37+ new Writable ( ) ;
38+
39+ bench . start ( ) ;
40+ for ( let i = 0 ; i < n ; ++ i )
41+ new Writable ( ) . destroy ( ) ;
42+ bench . end ( n ) ;
43+ break ;
44+ case 'transform' :
45+ new Transform ( { } ) ;
46+ new Transform ( ) ;
47+
48+ bench . start ( ) ;
49+ for ( let i = 0 ; i < n ; ++ i )
50+ new Transform ( ) . destroy ( ) ;
51+ bench . end ( n ) ;
52+ break ;
53+ default :
54+ throw new Error ( 'Invalid kind' ) ;
55+ }
56+ }
You can’t perform that action at this time.
0 commit comments