- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在使用 gulpjs 来捆绑多组 css 文件。每个集合都被捆绑到自己的文件中,所以我的代码看起来像这样:
var es = require('event-stream');
gulp.task("bundle", function(){
var streams = [];
for(var i in sets) {
var set = sets[i];
var stream = gulp.src(set.sources)
.pipe(...)
.pipe(gulp.dest(set.destination));
streams.push(stream);
}
var merged = es.concat.apply(es, streams);
return merged;
});
所以它一直运行良好,但现在我的包已经足够大以至于我看到以下错误:
(node) warning: possible EventEmitter memory leak detected. 11 listeners added. Use emitter.setMaxListeners() to increase limit.
我尝试应用类似 this 的答案和 this但我似乎无法弄清楚在哪里调用 setMaxListeners(0)
。
在合并流时如何调用 setMaxListeners
?
最佳答案
看起来问题出在 event-stream
模块 ( see this issue )。
目前,我能够通过这行代码抑制问题。当然,这在全局范围内设置了最大值,这并不理想。
require('events').EventEmitter.prototype._maxListeners = 30;
看起来这个问题最终会在 stream-combiner
中解决,它是 event-stream
的依赖项。
关于node.js - 合并NodeJS流时如何调用 `setMaxListeners`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22572574/
我正在使用 gulpjs 来捆绑多组 css 文件。每个集合都被捆绑到自己的文件中,所以我的代码看起来像这样: var es = require('event-stream'); gulp.task(
根据 this question here 我需要调用 request.setMaxListeners(0) 来解决所描述的问题。 当我尝试做的时候: var request = require('r
我在发射器上有两个不同的事件,我需要动态设置最大监听器计数。我已经浏览了很多教程和文档,但无法理解是将计数设置为发射器上的每个单独事件,还是将所有事件一起设置为特定计数。 emitter.on('e
这个我找了又找,没用。我已经梳理了网络(包括 Stackoverflow)和 Node 文档来寻找答案,但没有找到一个有效的答案(也许这只是我的搜索不好)。我正在处理 gulp 配置文件中的事件流,并
当我使用 nodemon 重新启动代码时,我收到以下警告: (node:11576) MaxListenersExceededWarning: Possible EventEmitter memory
我阅读了其他一些问题和帖子,但找不到在哪里应用 .setMaxListeners(0)。我正在使用一个简单的 websocket-server,它出现了错误: (node) warning: poss
我在这个问题中遇到了类似的问题: node.js - request - How to "emitter.setMaxListeners()"? 用户似乎已经解决了他们的问题,但我不确定他们是如何做到
当我使用 node.js 'request' 模块对某个 URI 执行 GET 时; var options = {uri:"aURI", headers:headerData}; request.g
我使用 Node apn 发送推送通知。 emitter.setMaxListeners()向10,000个用户发送推送时出现问题。 但不会出现向 1,000 个用户发送推送的问题。 如何解决这个问题
我正在使用 socket.io 和 node.js 加上 mysql 用于私有(private)聊天应用程序,当我使用 socket.on('example', function (data){...
我知道这可能会标记为重复的解决方案,但堆栈溢出的解决方案对我不起作用。 问题 (node:5716) MaxListenersExceededWarning: Possible EventEmitte
我有以下代码: var schild = spawn('script.sh', ["process1", "process2"]); schild.stderr.on('data',
我是一名优秀的程序员,十分优秀!