Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/450.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 Electron | Node.js中存在错误_Javascript_Node.js_Electron_Webtorrent - Fatal编程技术网

Javascript Electron | Node.js中存在错误

Javascript Electron | Node.js中存在错误,javascript,node.js,electron,webtorrent,Javascript,Node.js,Electron,Webtorrent,我正在尝试使用Electron和Node.js下载torrent。这是我在main.js中的代码 const electron = require('electron') const { app, BrowserWindow } = electron const path = require('path') const url = require('url') const server = require('./server') let win function createWindow

我正在尝试使用Electron和Node.js下载torrent。这是我在main.js中的代码

const electron = require('electron')
const { app, BrowserWindow } = electron

const path = require('path')
const url  = require('url')
const server = require('./server')

let win

function createWindow() {
  win = new BrowserWindow ({ vibrancy: 'dark', width: 400, height: 600, frame: false, resizable: false, transparent: true })
  win.loadURL(url.format({
    pathname: path.join(__dirname, 'index.html'),
    protocol: 'file',
    slashes: true
  }))
}

app.on('ready', createWindow)
我在server.js中的代码是:

require('http').createServer(function (req, res) {
  var WebTorrent = require('webtorrent-hybrid')

  var client = new WebTorrent()

  var magnetURI = 'magnet:?xt=urn:btih:EF3B95AEF1C94FC8E98825386C3B12560FE21CFF&tr=udp://glotorrents.pw:6969/announce&tr=udp://tracker.opentrackr.org:1337/announce&tr=udp://torrent.gresille.org:80/announce&tr=udp://tracker.openbittorrent.com:80&tr=udp://tracker.coppersurfer.tk:6969&tr=udp://tracker.leechers-paradise.org:6969&tr=udp://p4p.arenabg.ch:1337&tr=udp://tracker.internetwarriors.net:1337'

  client.add(magnetURI, { path: 'movies' }, function (torrent) {
    torrent.on('done', function () {
      console.log('torrent download finished')
    })
  })

  res.end('Hello from server started by Electron app!');

}).listen(9000)
当我运行应用程序并在控制台上显示以下消息时,问题开始出现:

(节点:9032)MaxListenerSexceed矮化:检测到可能的EventEmitter内存泄漏。增加了11名准备就绪的听众。使用emitter.setMaxListeners()增加限制

这只是一个警告

根据Nodejs.org文档

默认情况下,如果为特定事件添加了超过10个侦听器,EventEmitter将打印警告。这是一个有用的默认值,有助于查找内存泄漏。显然,并非所有事件都应限制为仅10名听众。setMaxListeners()方法允许修改此特定EventEmitter实例的限制。该值可以设置为无穷大(或0),以表示侦听器的数量不受限制

因此,您需要在代码中添加一行


main.js或server.js中的“emitter.setMaxListeners(n)”

?可以给我看一下跟踪吗?因此,我可以准确地告诉你把这条线放在哪里。另外,如果你确实有一个发射器内存泄漏(而不是碰巧需要11个侦听器,而不是更多),那么你需要从源头上解决这个问题-提高限制对你没有帮助。只是一张纸条,我没有收到警告。你能提到计算机、操作系统和节点版本的规格吗?Windows 10节点版本:v8.9.4