修复删除连接客户端时会崩溃的异常

This commit is contained in:
suntao 2021-08-18 09:57:49 +08:00
parent f33dd4fa2e
commit 25c34c0b88

View File

@ -259,7 +259,7 @@ namespace OnlineUserPool.ViewModels
private void SendMessage(Collection<HostModel> clients, List<MsgModel> msgModels) private void SendMessage(Collection<HostModel> clients, List<MsgModel> msgModels)
{ {
if (!clients.Any()) if (!clients.Any() || !msgModels.Any())
{ {
return; return;
} }
@ -406,14 +406,21 @@ namespace OnlineUserPool.ViewModels
private void CientDisconnected(EndPoint point) private void CientDisconnected(EndPoint point)
{ {
var client = Clients.FirstOrDefault(f => f.IPEndPoint.ToString() == point.ToString()); dispatcher.Invoke(() =>
if (client != null)
{ {
dispatcher.Invoke(() => try
{ {
Clients.Remove(client); var client = Clients.FirstOrDefault(f => f.IPEndPoint.ToString() == point.ToString());
}); if (client != null)
} {
Clients.Remove(client);
}
}
catch(Exception ex)
{
Log.Information("在CientDisconnected触发以后删除client时报错了,"+ ex.Message +", " + ex.StackTrace);
}
});
} }
} }