Node.js客户端套接字未从Node.js服务器中销毁
每当套接字出错、关闭或结束时,我调用此函数:Node.js客户端套接字未从Node.js服务器中销毁,node.js,tcpclient,destroy,tcpserver,Node.js,Tcpclient,Destroy,Tcpserver,每当套接字出错、关闭或结束时,我调用此函数: destroySocket = function(){ socket.destroy(); console.log("Socket gone"); destroySocket = function(){}; delete this; } 这个函数在这里被调用: socket.on('error', function(had_error){ console.log(had_error); destroySocke
destroySocket = function(){
socket.destroy();
console.log("Socket gone");
destroySocket = function(){};
delete this;
}
这个函数在这里被调用:
socket.on('error', function(had_error){ console.log(had_error); destroySocket(); });
socket.on('close', function(){ destroySocket(); });
socket.on('end', function () { destroySocket(); });
当用户断开连接时,我确实会使套接字消失,但在这种情况发生后,我开始收到此错误:
Error: This socket has been ended by the other party
为什么我会得到这个?这以前从未发生在我身上,它应该在socket.destroy时被销毁;你为什么要破坏它?由于错误,套接字已被关闭…@mscdex由于某种原因没有被销毁,我一直得到消息此套接字已被。。。每次随机错误。加上socket.destroy;只会接到一次电话。