diff --git a/src/YunDa.Server/Yunda.ISAS.DataMonitoringServer/TcpSocket/Server/DotNettyServerHandler.cs b/src/YunDa.Server/Yunda.ISAS.DataMonitoringServer/TcpSocket/Server/DotNettyServerHandler.cs index fc04fad..d4ec80b 100644 --- a/src/YunDa.Server/Yunda.ISAS.DataMonitoringServer/TcpSocket/Server/DotNettyServerHandler.cs +++ b/src/YunDa.Server/Yunda.ISAS.DataMonitoringServer/TcpSocket/Server/DotNettyServerHandler.cs @@ -148,7 +148,6 @@ namespace Yunda.SOMS.DataMonitoringServer.TcpSocket.Server { await SendCustomMessageAsync(ctx, address, 0, 4, 0);//发送版本信息请求 } - UpdateConnectionContext(address, ctx); await UpdateCommunicationStateCountAsync(address, ctx); } catch (Exception ex) @@ -158,23 +157,20 @@ namespace Yunda.SOMS.DataMonitoringServer.TcpSocket.Server }); } - private void UpdateConnectionContext(byte address, IChannelHandlerContext ctx) - { - _connections[address] = ctx; - } + private async Task UpdateCommunicationStateCountAsync(byte address, IChannelHandlerContext ctx) { - if (_connections.TryGetValue(address, out _)) + if (!_connections.ContainsKey(address)) { - //_communicationStateCounts[address]++; - //已经存在的装置地址 + await SendInitMsgToDeviceAsync(ctx, address); + _connections.TryAdd(address, ctx); } else { - //新加入的装置的地址 - await SendInitMsgToDeviceAsync(ctx, address); + _connections[address] =ctx; } + } private async Task SendInitMsgToDeviceAsync(IChannelHandlerContext ctx, byte address)