tcp 远程主机强迫关闭了一个现有的连接 EndAcceptTcpClient
使用C# 采用异步连接方式进行通信,服务器端抛出异常 代码如下 ,求大神
private void HandleTcpClientAccepted(IAsyncResult ar)
{
try
{
if (IsRunning)
{
TcpListener tcpListener = (TcpListener)ar.AsyncState;
/*抛出异常 远程主机强迫关闭了一个现有的连接 然后客户端就无法向服务器进行连接操作了 */
TcpClient tcpClient = tcpListener.EndAcceptTcpClient(ar);
byte[] buffer = new byte[tcpClient.ReceiveBufferSize];
TcpClientState internalClient= new TcpClientState(tcpClient, buffer);
lock (this.clients)
{
this.clients.Add(internalClient);
RaiseClientConnected(tcpClient);
}
NetworkStream networkStream = internalClient.NetworkStream;
networkStream.BeginRead(internalClient.Buffer,0,internalClient.Buffer.Length,HandleDatagramReceived,internalClient);
tcpListener.BeginAcceptTcpClient(new AsyncCallback(HandleTcpClientAccepted), ar.AsyncState);
}
}
catch (Exception ex)
{
}
}