react-native ios项目+内存泄漏

Posted

技术标签:

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

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

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

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

【问题讨论】:

看看这是否有帮助github.com/npm/npm/issues/13806 【参考方案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 个侦听器。更多:***.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....前两行似乎没有任何作用...我错过了什么。

以上是关于react-native ios项目+内存泄漏的主要内容,如果未能解决你的问题,请参考以下文章

iOS 内存泄漏的检测方式

MKMapView 在 iOS10 中检测内存泄漏

iOS 或 MonoTouch 中的固有内存泄漏?

iOS XML Parser 内存泄漏与 KissXML

客观 c subStringToIndex 内存泄漏

iOS内存泄漏检测方法