Skip to content

Instantly share code, notes, and snippets.

@mscdex
Last active August 29, 2015 14:14
Show Gist options
  • Save mscdex/029f402bb2dbe601ba3a to your computer and use it in GitHub Desktop.
Save mscdex/029f402bb2dbe601ba3a to your computer and use it in GitHub Desktop.
EventEmitter benchmarks
var common = require('../common.js');
var EventEmitter = require('events').EventEmitter;
var bench = common.createBenchmark(main, {n: [25e5]});
function main(conf) {
var n = conf.n | 0;
var ee = new EventEmitter();
var listeners = [];
for (var k = 0; k < 10; k += 1)
ee.on('dummy', function() {});
bench.start();
for (var i = 0; i < n; i += 1) {
ee.emit('dummy', 5, true);
}
bench.end(n);
}
var common = require('../common.js');
var EventEmitter = require('events').EventEmitter;
var bench = common.createBenchmark(main, {n: [25e4]});
function main(conf) {
var n = conf.n | 0;
var ee = new EventEmitter();
for (var k = 0; k < 10; k += 1)
ee.on('dummy', function() {});
bench.start();
for (var i = 0; i < n; i += 1) {
ee.emit('dummy');
}
bench.end(n);
}
var common = require('../common.js');
var EventEmitter = require('events').EventEmitter;
var bench = common.createBenchmark(main, {n: [25e4]});
function main(conf) {
var n = conf.n | 0;
var ee = new EventEmitter();
var listenerCount = EventEmitter.listenerCount;
for (var k = 0; k < 10; k += 1)
ee.on('dummy', function() {});
bench.start();
for (var i = 0; i < n; i += 1) {
var r = listenerCount(ee, 'dummy');
}
bench.end(n);
}
var common = require('../common.js');
var EventEmitter = require('events').EventEmitter;
var bench = common.createBenchmark(main, {n: [25e4]});
function main(conf) {
var n = conf.n | 0;
var ee = new EventEmitter();
ee.setMaxListeners(101);
for (var k = 0; k < 100; k += 1)
ee.on('dummy', function() {});
bench.start();
for (var i = 0; i < n; i += 1) {
var r = ee.listeners('dummy');
}
bench.end(n);
}
var common = require('../common.js');
var EventEmitter = require('events').EventEmitter;
var bench = common.createBenchmark(main, {n: [25e4]});
function main(conf) {
var n = conf.n | 0;
var ee = new EventEmitter();
for (var k = 0; k < 10; k += 1)
ee.on('dummy', function() {});
bench.start();
for (var i = 0; i < n; i += 1) {
var r = ee.listeners('dummy');
}
bench.end(n);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment