提交代码
This commit is contained in:
@ -60,7 +60,7 @@ namespace WCS.BLL
|
||||
//载入配置
|
||||
tcpClient.Setup(new TouchSocketConfig()
|
||||
.SetRemoteIPHost(RemoteIPHost)
|
||||
.SetBindIPHost(BindIPHost)
|
||||
//.SetBindIPHost(BindIPHost)
|
||||
.ConfigurePlugins(a =>
|
||||
{
|
||||
//配置断线重连
|
||||
@ -156,24 +156,35 @@ namespace WCS.BLL
|
||||
}
|
||||
}
|
||||
|
||||
public void ReConnectAsync()
|
||||
{
|
||||
tcpClient.TryConnectAsync();
|
||||
}
|
||||
|
||||
|
||||
public void Send(byte[] message)
|
||||
{
|
||||
var boardId = (message[3] << 8) + message[4];
|
||||
//记录发送指令 用于通信校验 同Id只校验最后一个指令
|
||||
////MessageList.AddOrUpdate(boardId, new MessageDto()
|
||||
////{
|
||||
//// ID = boardId,
|
||||
//// Message = message,
|
||||
////}, (key, oldValue) => oldValue = new MessageDto()
|
||||
////{
|
||||
//// ID = boardId,
|
||||
//// Message = message,
|
||||
////});
|
||||
lock (sendLockObject)
|
||||
try
|
||||
{
|
||||
tcpClient.Send(message);
|
||||
//发送自带10ms间隔
|
||||
Thread.Sleep(10);
|
||||
var boardId = (message[3] << 8) + message[4];
|
||||
lock (sendLockObject)
|
||||
{
|
||||
tcpClient.Send(message);
|
||||
//发送自带10ms间隔
|
||||
Thread.Sleep(10);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
//因异常断连时(网线已经被断了) 尝试重连一次
|
||||
if (ex is NotConnectedException)
|
||||
{
|
||||
Task.Run(() =>
|
||||
{
|
||||
ReConnectAsync();
|
||||
});
|
||||
}
|
||||
throw ex;
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user