イベントエミッタをリッスンするクラスがある場合、すべてのインスタンスをバインドするのは間違っていますか?node.jsイベントエミッタがマルチインスタンスにバインドする
function MyClass() {
emitter.on('ready', function() {
// do something
});
}
myclass = new MyClass();
私がemitter.on()を複数回呼び出すと、警告が表示されます。
(ノード)警告:可能EventEmitterメモリリークが検出されました。 11 リスナーが追加されました。 limitを増やすにはemitter.setMaxListeners()を使用してください。
イベントエミッタは、クラスインスタンス外でモジュールごとに1回のみバインドされることを意味していますか?
これが間違っている場合、イベントが発生したときにクラスインスタンスにアクセスするにはどうすればよいですか?
おかげ
おかげレイノスを行うことによってこの問題を回避することができます私は私が何か間違ったことをやっていた考えていました。 – Tim
パーティーに遅れていますが、 'setMaxListeners(0)'は警告を完全に無効にすることにも注意してください。 – qubyte
これは 'setMaxListeners(Infinity)'と同じです – Raynos