javascript - 删除套接字前是否需要解除绑定(bind)回调?

标签 javascript node.js

我的 js 多人游戏存在内存泄漏问题。当客户端连接到服务器时,我绑定(bind)了很多回调。我的问题是在从玩家表中删除套接字之前我是否必须取消绑定(bind)回调?

这是我的示例回调:

 Player.prototype.viewPortListenerInit = function(){
  var self = this;

  this.socket.on('clientViewPortResize', function(data){
    self.clientViewPort = data;
  });

  };

这里是将玩家添加到玩家列表/哈希集中:

this.list[socket.id] = new Player(socket);

这里是删除:

socket.on('disconnect', function(){
       delete this.list[socket.id]
});

最佳答案

当没有对实例 EventEmitter 的引用(如套接字)时,它会通过其回调进行垃圾回收。

关于javascript - 删除套接字前是否需要解除绑定(bind)回调?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41349079/

相关文章:

javascript - 有没有办法检查网站加载 javascript 需要多长时间

javascript - Socket.io 消息未附加

Javascript - IE6+ 上正确的 getAttributeNode

Javascript 网格布局按钮

node.js - 使用回调中的值

javascript - 以编程方式创建 aws API key 并将其添加到单一功能的使用计划中?

javascript - jQuery Mobile 中的中心控制组

javascript - Node-firebird顺序选择

node.js - 已解决 : Nodejs | Typescript | Router | ts-node-esm: Receiving: Cannot find module

node.js - 我在尝试将 babel 安装到我的 node.js 项目中时遇到问题