Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/471.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 检测到supertest EventEmitter内存泄漏_Javascript_Node.js_Memory Leaks_Supertest - Fatal编程技术网

Javascript 检测到supertest EventEmitter内存泄漏

Javascript 检测到supertest EventEmitter内存泄漏,javascript,node.js,memory-leaks,supertest,Javascript,Node.js,Memory Leaks,Supertest,这似乎是一个常见的问题,但我已经尝试了所有的建议,只是似乎无法通过它。共同的解决方案似乎是一个战略布局: process.setMaxListeners(0); 但我似乎不知道该把它放在哪里。它发生在我的测试用例中: 起初还可以,但随着我开始添加更多测试用例,它开始产生以下错误: (node) warning: possible EventEmitter memory leak detected. 11 listeners added. Use emitter.setMaxListeners(

这似乎是一个常见的问题,但我已经尝试了所有的建议,只是似乎无法通过它。共同的解决方案似乎是一个战略布局:

process.setMaxListeners(0);
但我似乎不知道该把它放在哪里。它发生在我的测试用例中:

起初还可以,但随着我开始添加更多测试用例,它开始产生以下错误:

(node) warning: possible EventEmitter memory leak detected. 11 listeners added. Use emitter.setMaxListeners() to increase limit.
Trace
    at process.EventEmitter.addListener (events.js:160:15)
    at process.on.process.addListener (node.js:769:26)
    at Object.module.exports [as shutdown] (/Users/socketwiz/Sites/swblog/node_modules/kraken-js/lib/middleware/shutdown.js:41:13)
    at Object.proto._middleware (/Users/socketwiz/Sites/swblog/node_modules/kraken-js/lib/appcore.js:166:24)
    at next (/Users/socketwiz/Sites/swblog/node_modules/kraken-js/lib/appcore.js:77:18)
    at Object.configure (/Users/socketwiz/Sites/swblog/index.js:10:5)
    at Object.proto._configure (/Users/socketwiz/Sites/swblog/node_modules/kraken-js/lib/appcore.js:85:28)
    at Object.proto.init (/Users/socketwiz/Sites/swblog/node_modules/kraken-js/lib/appcore.js:35:14)
    at create (/Users/socketwiz/Sites/swblog/node_modules/kraken-js/lib/appcore.js:258:13)
    at Promise.apply (/Users/socketwiz/Sites/swblog/node_modules/kraken-js/node_modules/q/q.js:1122:26)
    at Promise.promise.promiseDispatch (/Users/socketwiz/Sites/swblog/node_modules/kraken-js/node_modules/q/q.js:752:41)
    at /Users/socketwiz/Sites/swblog/node_modules/kraken-js/node_modules/q/q.js:1337:14
    at flush (/Users/socketwiz/Sites/swblog/node_modules/kraken-js/node_modules/q/q.js:108:17)
    at process._tickDomainCallback (node.js:459:13)
它似乎不是任何特定的测试,因为如果我评论一个失败的测试,它将移动到另一个测试

为了解决此问题,我尝试设置:

server.setMaxListeners(0);
在这里:

我也试过设置

server.setMaxListeners(0);
在这里:

但我似乎一点运气都没有。我应该把它放在哪里,或者有更好的解决方案吗?我正在使用节点v0.10.26。我的整个项目可在此处找到以供参考:


尽我所能,一切正常,这只是一个警告,但有点烦人:(

你有没有可能解决这个问题?没有,对不起:(我明白了。我可能做了一个强力变通。每次测试结束时,我都会删除所有侦听器。