Skip to content

Commit 847b9d2

Browse files
mscdexbnoordhuis
authored andcommitted
benchmark: add more EventEmitter benchmarks
PR-URL: #730 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: Brendan Ashworth <[email protected]>
1 parent 96597bc commit 847b9d2

File tree

5 files changed

+98
-0
lines changed

5 files changed

+98
-0
lines changed
+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
var common = require('../common.js');
2+
var EventEmitter = require('events').EventEmitter;
3+
4+
var bench = common.createBenchmark(main, {n: [25e4]});
5+
6+
function main(conf) {
7+
var n = conf.n | 0;
8+
9+
var ee = new EventEmitter();
10+
var listeners = [];
11+
12+
for (var k = 0; k < 10; k += 1)
13+
ee.on('dummy', function() {});
14+
15+
bench.start();
16+
for (var i = 0; i < n; i += 1) {
17+
ee.emit('dummy', 5, true);
18+
}
19+
bench.end(n);
20+
}

benchmark/events/ee-emit.js

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
var common = require('../common.js');
2+
var EventEmitter = require('events').EventEmitter;
3+
4+
var bench = common.createBenchmark(main, {n: [25e4]});
5+
6+
function main(conf) {
7+
var n = conf.n | 0;
8+
9+
var ee = new EventEmitter();
10+
11+
for (var k = 0; k < 10; k += 1)
12+
ee.on('dummy', function() {});
13+
14+
bench.start();
15+
for (var i = 0; i < n; i += 1) {
16+
ee.emit('dummy');
17+
}
18+
bench.end(n);
19+
}

benchmark/events/ee-listener-count.js

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
var common = require('../common.js');
2+
var EventEmitter = require('events').EventEmitter;
3+
4+
var bench = common.createBenchmark(main, {n: [25e4]});
5+
6+
function main(conf) {
7+
var n = conf.n | 0;
8+
9+
var ee = new EventEmitter();
10+
var listenerCount = EventEmitter.listenerCount;
11+
12+
for (var k = 0; k < 10; k += 1)
13+
ee.on('dummy', function() {});
14+
15+
bench.start();
16+
for (var i = 0; i < n; i += 1) {
17+
var r = listenerCount(ee, 'dummy');
18+
}
19+
bench.end(n);
20+
}

benchmark/events/ee-listeners-many.js

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
var common = require('../common.js');
2+
var EventEmitter = require('events').EventEmitter;
3+
4+
var bench = common.createBenchmark(main, {n: [25e4]});
5+
6+
function main(conf) {
7+
var n = conf.n | 0;
8+
9+
var ee = new EventEmitter();
10+
ee.setMaxListeners(101);
11+
12+
for (var k = 0; k < 100; k += 1)
13+
ee.on('dummy', function() {});
14+
15+
bench.start();
16+
for (var i = 0; i < n; i += 1) {
17+
var r = ee.listeners('dummy');
18+
}
19+
bench.end(n);
20+
}

benchmark/events/ee-listeners.js

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
var common = require('../common.js');
2+
var EventEmitter = require('events').EventEmitter;
3+
4+
var bench = common.createBenchmark(main, {n: [25e4]});
5+
6+
function main(conf) {
7+
var n = conf.n | 0;
8+
9+
var ee = new EventEmitter();
10+
11+
for (var k = 0; k < 10; k += 1)
12+
ee.on('dummy', function() {});
13+
14+
bench.start();
15+
for (var i = 0; i < n; i += 1) {
16+
var r = ee.listeners('dummy');
17+
}
18+
bench.end(n);
19+
}

0 commit comments

Comments
 (0)