我在发射器上有两个不同的事件,我需要动态设置最大监听器计数。我已经浏览了许多教程和文档,但无法理解计数是设置为发射器上的每个单独事件,还是将其设置为特定计数的所有事件。
emitter.on('event1', function(){})
emitter.on('event2', function(){})
emitter.setMaxListeners(15);
当我们使用上面的代码时,将事件 1 和事件 2 的最大侦听器计数设置为 15,还是将每个单独事件的侦听器计数设置为 15。
例如:
Case 1:
event1 -- Max 15 listeners
event2 -- Max 15 listeners
或
Case 2:
event1 listener + event2 listener -- Max 15 listeners?
它设置的是案例 1 还是案例 2?
任何帮助/建议都非常感谢。
谢谢。
默认情况下,如果超过 10 个,事件发射器将打印警告 为特定事件添加侦听器。
这意味着限制是针对事件发射器的每个事件。
emitter.setMaxListeners(( 方法允许修改限制 对于此特定事件发射器实例。该值可以设置为 无穷大(或 0(表示无限数量的侦听器。
参考这里
事件发射器setMaxListener
提供更多的光线。
默认情况下,最多可以为单个侦听器注册 10 个侦听器 事件。可以为单个事件发射器实例更改此限制 使用 emitter.setMaxListeners(n( 方法。
参考这里。
虽然文档中没有明确说明,但可以从上述两个链接中暗示