Commit 64e1f900 张东亮

1

1 个父辈 35075b96
......@@ -254,22 +254,22 @@ namespace Agv
// 开始监听客户端连接请求,Accept方法会阻断当前的线程;
Socket sokConnection = _server.Accept(); // 一旦监听到一个客户端的请求,就返回一个与该客户端通信的 套接字;
IPEndPoint endPoint = (IPEndPoint)sokConnection.RemoteEndPoint;
string ip = endPoint.Address.ToString();
int port = endPoint.Port;
string ip = $"{endPoint.Address.ToString()}:{port}";
Thread thr = new Thread(ListenNet);
Client client = new Client(sokConnection, thr, ip, endPoint.ToString());
thr.IsBackground = true;
if (dictClient.TryGetValue(ip, out Client client1))
{
log.info(string.Format($"{ip}重连 断开上一次连接:{client1.Endpoint}"));
Offline(client1);
dictClient[ip] = client;
}
else
//if (dictClient.TryGetValue(ip, out Client client1))
//{
// log.info(string.Format($"{ip}重连 断开上一次连接:{client1.Endpoint}"));
// Offline(client1);
// dictClient[ip] = client;
//}
//else
dictClient.Add(ip, client);
thr.Start(client);
log.info(string.Format("客户端[{0}]连接服务端[{1}]成功", endPoint.ToString(), ServerInfo));
Thread.Sleep(1000);
Thread.Sleep(100);
}
catch (SocketException)
{
......@@ -487,6 +487,7 @@ namespace Agv
{
client.Loop = false;
log.error($"ListenNet error,{client.IP}", e);
return;
}
}
}
......@@ -558,7 +559,7 @@ namespace Agv
}
}
client.nodeName.Clear();
client.ListenNet.Abort();
// client.ListenNet.Abort();
log.info(string.Format("关闭对客户端[{0}]的监听线程1", client.Endpoint));
}
catch (ThreadAbortException)
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!