javascript-Node.js事件流:在哪里设置setMaxListeners?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript-Node.js事件流:在哪里设置setMaxListeners?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1598字,纯文字阅读大概需要3分钟。
内容图文
我搜索并搜索了此搜索,但无济于事.我已经梳理了网络(包括Stackoverflow)和Node文档,得到了答案,但没有找到一个可行的方法(也许这对我来说很不好).我正在使用gulp配置文件中的事件流,并且有一个特殊任务正在从EventEmitter类中遇到经典的“检测到内存泄漏”错误.根据我的发现,解决此问题的答案似乎是调用EventEmitter类的setMaxListeners方法.我的研究建议事件流具有一个Stream对象,该对象应该是EventEmitter的实例.但是,无论我以什么方式尝试调用setMaxListeners,都无法找到方法.在研究完这个问题之后,我想我会把它带到这里的Node专家中(我假设这很简单,只是缺少了一些东西).这是我的代码:
return eventStream.merge(
gulp.src('./jscript/libs/file-one.js'),
gulp.src('./jscript/libs/filder_one/file-two.js'),
gulp.src('./jscript/libs/folder_two/file-three.js'),
gulp.src('./jscript/libs/folder_three/file_four.js'),
gulp.src('./jscript/libs/folder_four/file_five.js'),
gulp.src('./jscript/libs/folder_five/file_six.js'),
gulp.src('./jscript/libs/file_seven.js'),
gulp.src('./jscript/libs/file_eight.js'),
gulp.src('./jscript/lists/rules/*.js')
)
.pipe(concat('my_file.js'))
.pipe(gulp.dest('./jscript/dist/'))
.pipe(rename('my_file.min.js'))
.pipe(uglify())
.pipe(gulp.dest('./jscript/dist/'));
谢谢!
解决方法:
这不是您问题的直接答案,但是您可以将一组glob模式传递给’gulp.src()’,而不是合并多个’gulp.src()’.它不能解决您的问题吗?
https://github.com/gulpjs/gulp/blob/master/docs/API.md#gulpsrcglobs-options
编辑
作为直接回答,以下对我有用:
var merged = eventStream.merge(...);
merged.setMaxListeners(0);
return merged.pipe(...);
在合并函数中添加事件侦听器后,似乎在事件循环的滴答声之间检查了侦听器计数.因此,我们可以在添加侦听器后立即设置setMaxListeners.
内容总结
以上是互联网集市为您收集整理的javascript-Node.js事件流:在哪里设置setMaxListeners?全部内容,希望文章能够帮你解决javascript-Node.js事件流:在哪里设置setMaxListeners?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。