events: improve listeners() performance
Benchmark results (keep in mind listeners
is always implicitly multiplied by 2 by the benchmark):
confidence improvement accuracy (*) (**) (***)
events/ee-listeners.js raw='false' listeners=1 n=5000000 -0.96 % ±2.89% ±3.85% ±5.03%
events/ee-listeners.js raw='false' listeners=10 n=5000000 *** 7.71 % ±1.48% ±1.98% ±2.61%
events/ee-listeners.js raw='false' listeners=100 n=5000000 *** 35.04 % ±0.89% ±1.19% ±1.58%
events/ee-listeners.js raw='false' listeners=2 n=5000000 *** 20.62 % ±1.41% ±1.89% ±2.47%
events/ee-listeners.js raw='false' listeners=5 n=5000000 *** 27.57 % ±0.80% ±1.07% ±1.40%
Checklist
-
make -j4 test
(UNIX), orvcbuild test
(Windows) passes -
tests and/or benchmarks are included -
commit message follows commit guidelines