events: do not keep arrays with a single listener · nodejs/node@8bf64d1 · GitHub
Skip to content

Commit 8bf64d1

Browse files
lpincaMylesBorins
authored andcommitted
events: do not keep arrays with a single listener
Use the remaining listener directly if the array of listeners has only one element after running `EventEmitter.prototype.removeListener()`. Advantages: - Better memory usage and better performance if no new listeners are added for the same event. Disadvantages: - A new array must be created if new listeners are added for the same event. PR-URL: #12043 Backport-PR-URL: #13796 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com> Reviewed-By: Ron Korving <ron@ronkorving.nl>
1 parent ef133b3 commit 8bf64d1

2 files changed

Lines changed: 30 additions & 7 deletions

File tree

lib/events.js

Lines changed: 13 additions & 7 deletions

test/parallel/test-event-emitter-remove-listeners.js

Lines changed: 17 additions & 0 deletions

0 commit comments

Comments
 (0)