【问题标题】:react-native ios project + memory leakreact-native ios项目+内存泄漏
【发布时间】:2016-10-31 13:55:42
【问题描述】:

我在 iOS 上使用 react-native。我的项目有以下警告:

检测到可能的 EventEmitter 内存泄漏。添加了 11 个错误侦听器。使用emitter.setMaxListeners() 增加limit

我不使用DeviceEventEmitter,我使用键盘组件。

【问题讨论】:

标签: ios memory mobile react-native


【解决方案1】:

如果您没有使用 Flux,请提供您正在使用的组件的 npm 链接。

【讨论】:

  • 是的,我正在使用 Flux: var Dispatcher = require("flux").Dispatcher; module.exports = new Dispatcher();之后我使用这个 Dispatcher: Dispatcher.dispatch(...) Flux 有什么问题吗?
  • 您的一个商店的听众超过 10 个 Limit var AppDispatcher = require('../Dispatcher/Dispatcher'); var EventEmitter = require('events').EventEmitter;要求('事件').EventEmitter.prototype._maxListeners = 100; /* 默认情况下,任何单个事件最多可以注册 10 个侦听器。更多:stackoverflow.com/questions/9768444/… */
  • 非常感谢您提供的信息
【解决方案2】:

您的一个 Store 超出了 EventEmitter 的能力。就这样做。

var AppDispatcher = require('../Dispatcher/Dispatcher');
var EventEmitter = require('events').EventEmitter;
require('events').EventEmitter.prototype._maxListeners = 100;

/* 默认情况下,最多可以为任何单个事件注册 10 个侦听器。更多在这里: possible EventEmitter memory leak detected */

【讨论】:

  • 非常感谢您提供的信息
  • uhh....前两行似乎没有任何作用...我错过了什么。
猜你喜欢
  • 1970-01-01
  • 2018-03-08
  • 2016-03-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-07
  • 2012-02-18
相关资源
最近更新 更多